Built with blockbuilder.org
xxxxxxxxxx
<meta charset="utf-8">
<style>
.country {
fill: #ccc;
stroke: #777;
}
.malaria {
fill-opacity: .5;
stroke: #f00;
fill: #f00;
stroke-width: .5px;
}
</style>
<body>
<script src="https://d3js.org/d3.v3.min.js"></script>
<script src="https://d3js.org/topojson.v0.min.js"></script>
<script>
var malaria = [{'number': 'Senegal', 'cases': 44959, 'longitude': -14.452362,'latitude': 14.497401},
{'number': 'Saudi Arabia', 'cases': 4736, 'longitude': 45.079162,'latitude': 23.885942},
{'number': 'Madagascar', 'cases': 6946, 'longitude': 46.869107,'latitude': -18.766947},
{'number': 'Central Africa', 'cases': 33411, 'longitude': 19.568710,'latitude': 2.318462}, {'number': 'Burundi', 'cases': 308095, 'longitude': 29.918886, 'latitude': -3.373056}, {'number': 'Botswana', 'cases': 10510, 'longitude': 24.684866, 'latitude': -22.328474}, {'number': 'Bhutan', 'cases': 5935, 'longitude': 90.433601, 'latitude': 27.514162}];
var radius = d3.scale.sqrt()
.domain([0, 40000])
.range([0, 4.56]);
var width = 960,
height = 500;
var projection = d3.geo.orthographic()
.scale(293)
.translate([width / 2, height / 2])
.clipAngle(121)
.rotate([.5,0]);
var path = d3.geo.path()
.projection(projection);
var svg = d3.select("body")
.append("svg")
.attr("width", width)
.attr("height", height);
d3.json("https://cdn.rawgit.com/mbostock/4090846/raw/8a7f176072d508218e120773943b595c998991be/world-50m.json", function(error, data) {
svg.append("path")
.attr("class", "country")
.datum(topojson.object(data, data.objects.countries))
.attr("d", path);
svg.selectAll(".malaria")
.data(malaria)
.enter()
.append("circle")
.attr("class","malaria")
.attr("r", function(d){return radius(d.cases);})
.attr("cx", function(d){ return projection([d.longitude, d.latitude])[0];})
.attr("cy", function(d){ return projection([d.longitude, d.latitude])[1];});
});
</script>
Modified http://d3js.org/d3.v3.min.js to a secure url
Modified http://d3js.org/topojson.v0.min.js to a secure url
https://d3js.org/d3.v3.min.js
https://d3js.org/topojson.v0.min.js