Skip to content

Instantly share code, notes, and snippets.

@dyorama
Created October 15, 2015 12:51
Show Gist options
  • Save dyorama/0f7cecfff3d2ba6191f9 to your computer and use it in GitHub Desktop.
Save dyorama/0f7cecfff3d2ba6191f9 to your computer and use it in GitHub Desktop.
Catastrophes naturelles
Mois catastrophes
Janvier 19237
Février 5479
Mars 2337
Avril 6582
Mai 11928
Juin 8808
Juillet 13737
Août 3846
Septembre 5879
Octobre 9284
Novembre 20585
Décembre 41758
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Cleaning Up</title>
<script type="text/javascript" src="http://d3js.org/d3.v3.js"></script>
<style type="text/css">
body {
background-color: white;
font-family: Helvetica, Arial, sans-serif;
}
h1 {
font-size: 45px;
margin: 0;
}
p {
font-size: 14px;
margin: 10px 0 0 0;
}
svg {
background-color: white;
}
rect:hover {
fill: red;
}
.axis path,
.axis line {
fill: none;
stroke: black;
shape-rendering: crispEdges;
}
.axis text {
font-family: sans-serif;
font-size: 11px;
}
.y.axis path,
.y.axis line {
opacity: 0;
}
</style>
</head>
<body>
<h1>Quel mois est le plus propice aux catastrophes naturelles ?</h1>
<p>Nombre d'arrêtés de catastrophes naturelles selon la date de début de l'évènement. Source: <a href="http://stats.oecd.org/Index.aspx?DataSetCode=BLI">OECD</a>, 2014</p>
<script type="text/javascript">
var w = 600;
var h = 400;
var padding = [ 20, 0, 30, 90 ]; //Top, right, bottom, left
var widthScale = d3.scale.linear()
.range([ 0, w ]);
var widthScale = d3.scale.linear()
.range([ 0, w - padding[1] - padding[3] ]);
var heightScale = d3.scale.ordinal()
.rangeRoundBands([ padding[0], h - padding[2] ], 0.1);
var xAxis = d3.svg.axis()
.scale(widthScale)
.orient("bottom")
.ticks(5);
var yAxis = d3.svg.axis()
.scale(heightScale)
.orient("left");
var svg = d3.select("body")
.append("svg")
.attr("width", w)
.attr("height", h);
d3.csv("catanaturelles.csv", function(data) {
widthScale.domain([ 0, d3.max(data, function(d) {
return +d.catastrophes;
}) ]);
heightScale.domain(data.map(function(d) { return d.Mois; } ));
var rects = svg.selectAll("rect")
.data(data)
.enter()
.append("rect");
rects.attr("x", padding[3])
.attr("y", function(d) {
return heightScale(d.Mois);
})
.attr("width", function(d) {
return widthScale(d.catastrophes);
})
.attr("height", heightScale.rangeBand())
.attr("fill", "steelblue")
.append("title")
.text(function(d) {
return d.catastrophes;
});
svg.append("g")
.attr("class", "x axis")
.attr("transform", "translate(" + padding[3] + "," + (h - padding[2]) + ")")
.call(xAxis);
svg.append("g")
.attr("class", "y axis")
.attr("transform", "translate(" + padding[3] + ",0)")
.call(yAxis);
});
</script>
</body>
</html>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment