xxxxxxxxxx
<html lang="en">
<head>
<meta charset="utf-8">
<title>Social progress index - By country</title>
<script type="text/javascript" src="https://d3js.org/d3.v3.js"></script>
<style type="text/css">
</style>
</head>
<body>
<h1> Social Progress Index - By Country</h1>
<h3> MEASURING NATIONAL PROGRESS – To truly advance social progress, we must learn to measure it, comprehensively and rigorously.
The Social Progress Index offers a rich framework for measuring the multiple dimensions of social progress, benchmarking success, and catalyzing greater human wellbeing
</h3>
<script type="text/javascript">
var data;
var height;
var width;
var svg = d3.select("body")
.append("svg")
.attr("width", 300)
.attr("height", 1500);
d3.csv("Social_Progress_Index.csv", function(data) {
data.sort(function(a, b) {
return d3.descending(a.SocialProgressIndex, b.SocialProgressIndex);
//If your numeric values aren't sorting properly,
//try commenting out the line above, and instead using:
//
//return d3.descending(+a.lifeSatisfaction, +b.lifeSatisfaction);
//
//Data coming in from the CSV is saved as strings (text),
//so the + signs here force JavaScript to treat those
//strings instead as numeric values, thereby fixing the
//sort order (hopefully!).
});
var rects = svg.selectAll("rect")
.data(data)
.enter()
.append("rect");
rects.attr("x", 0)
.attr("y", function(d, i) {
return i * 10;
})
.attr("width", function(d) {
return d.SocialProgressIndex * 2;
})
.attr("height", 8)
.attr("style", "fill:rgb(71, 156, 184);stroke-width:0")
.append("title")
.text(function(d) {
return d.Country + " SPI " + d.SocialProgressIndex;
});
});
</script>
</body>
</html>
Modified http://d3js.org/d3.v3.js to a secure url
https://d3js.org/d3.v3.js