Built with blockbuilder.org
xxxxxxxxxx
<head>
<meta charset="utf-8">
<script src="https://d3js.org/d3.v4.min.js"></script>
<style>
body { margin:0;position:fixed;top:0;right:0;bottom:0;left:0; }
</style>
</head>
<body>
<script>
// Feel free to change or delete any of the code you see in this editor!
var margin = {top : 20,left: 20, right: 20, bottom: 20}
var svg = d3.select("body").append("svg")
.attr("width", 960)
.attr("height", 500)
// gare 1 selectionnée virtuellement
var gare1 = 713040
// gare 2 selectionnée virtuellement
var gare2 = 471003
// emplacement du text 'nom des gares'
svg.append("text")
.attr("class","nom")
.text("Nom des gares")
.attr("y", 0 + margin.top)
.attr("x", 0 + margin.left)
.attr("font-size", 15)
.attr("font-family", "monospace")
.attr("text-anchor","start")
// emplacement du nom de la gare 1
svg.append("text")
.attr("class","nom1")
.text("")
.attr("y", 0 + margin.top)
.attr("x", 500 + margin.left)
.attr("font-size", 15)
.attr("font-family", "monospace")
.attr("text-anchor","end")
// emplacement du nom de la gare 2
svg.append("text")
.attr("class","nom2")
.text("")
.attr("y", 0 + margin.top)
.attr("x", 800 + margin.left)
.attr("font-size", 15)
.attr("font-family", "monospace")
.attr("text-anchor","end")
// emplacement du text 'nombre de voyageurs'
svg.append("text")
.attr("class","Nombre de voyageurs")
.text("Nombre de voyageurs")
.attr("y", 20 + margin.top)
.attr("x", 0 + margin.left)
.attr("font-size", 15)
.attr("font-family", "monospace")
.attr("text-anchor","start")
// emplacement de la valeur correspondante pour la gare 1
svg.append("text")
.attr("class","valeur_voyageurs")
.text("")
.attr("y", 20 + margin.top)
.attr("x", 500 + margin.left)
.attr("font-size", 15)
.attr("font-family", "monospace")
.attr("text-anchor","end")
// emplacement de la valeur correspondante pour la gare 2
svg.append("text")
.attr("class","valeur_voyageurs2")
.text("")
.attr("y", 20 + margin.top)
.attr("x", 800 + margin.left)
.attr("font-size", 15)
.attr("font-family", "monospace")
.attr("text-anchor","end")
// emplacement du text 'variation par rapport à 2015'
svg.append("text")
.attr("class","Variation")
.text("Variation par rapport à 2015")
.attr("y", 40 + margin.top)
.attr("x", 0 + margin.left)
.attr("font-size", 15)
.attr("font-family", "monospace")
.attr("text-anchor","start")
// emplacement de la valeur correspondante pour la gare 1
svg.append("text")
.attr("class","valeur_variation")
.text("")
.attr("y", 40 + margin.left)
.attr("x", 500 + margin.top)
.attr("font-size", 15)
.attr("font-family", "monospace")
.style("text-anchor","end")
// emplacement de la valeur correspondante pour la gare 2
svg.append("text")
.attr("class","valeur_variation2")
.text("")
.attr("y", 40 + margin.left)
.attr("x", 800 + margin.top)
.attr("font-size", 15)
.attr("font-family", "monospace")
.style("text-anchor","end")
// début csv
d3.csv("all-joined-datasets.csv",function(data){
//parcour des données
data.forEach(function(d){
d.nbvoy = d.voyageurs_2016
d.variation = (+d.voyageurs_2016-+d.voyageurs_2015)/(d.voyageurs_2015)
d.uic = d.Code_UIC
d.nom = d.Nom_de_la_gare
})
refresh(data,gare1,gare2)
})// fin csv
// Définition des fonctions
function refresh(data,gare1,gare2){
data.forEach(function(d){
if(d.uic == gare1){
d3.select(".valeur_voyageurs")
.text(d3.format(".3s")(d.nbvoy))
d3.select(".valeur_variation")
.text(d3.format(".0%")(d.variation))
d3.select(".nom1")
.text(d.nom)
;} // fin if
else if(d.uic == gare2){
d3.select(".valeur_voyageurs2")
.text(d3.format(".3s")(d.nbvoy))
d3.select(".valeur_variation2")
.text(d3.format(".0%")(d.variation))
d3.select(".nom2")
.text(d.nom)
;}// fin else if
;}) // fin forEach
;} // fin refresh
</script>
</body>
https://d3js.org/d3.v4.min.js