chart2 = {
var svg = d3.create("svg")
.attr("width", 1000)
.attr("height", 700)
var g = svg.append("g")
g.selectAll("path")
.data(nyc2.features)
.enter().append("path")
.attr("d", path)
.attr("fill","#C0C0C0");
var h = svg.append("g")
var circles = h.selectAll("circle")
.data(data.series)
.enter().append("circle")
.style("opacity", 0.7)
.attr("cx",function(d,i) {
var coords = proj([d.longitude,d.latitude]);
return coords[0];
})
.attr("cy",function(d,i) {
var coords = proj([d.longitude,d.latitude]);
return coords[1];
})
.attr("r",function(d,i) {
var proportion = d.values[3]/30000;
return 20*proportion;
})
.attr("fill",function(d) {
return d3.interpolateMagma(d.values[3]/30000);
});
g.attr("transform", "translate(200, 0)");
h.attr("transform", "translate(200, 0)");
var datetext = svg.append("text")
.text("Wednesday, Febrary 19th")
.attr("x", 50)
.attr("y", 100)
.style("font-size","30px")
.style("font-weight","bold");
svg.append("text")
.text("Total riders: ")
.attr("x",50)
.attr("y",130)
.style("font-size","20px")
.style("font-weight",20);
var valtext = svg.append("text")
.attr("x", 50)
.attr("y", 150)
.style("font-size","20px")
.style("font-weight",500)
.text("2868501");
const slider = d3.sliderBottom()
.min(d3.min(data.dates))
.max(d3.max(data.dates))
.marks(data.dates)
.width(300)
.tickFormat(d3.utcFormat("%b %d"))
.ticks(5)
.on("onchange", function(i) {
var index
for(var n = 0; n < data.dates.length; n++) {
if (data.dates[n] == i) {
index = n;
}
}
circles.transition().attr("r",function(d,i) {
var proportion = d.values[index]/30000;
return 20*proportion;
})
.attr("fill", function(d,i) {
return d3.interpolateMagma(d.values[index]/30000);
});
datetext.transition().text(d3.utcFormat("%A, %B %d")(i));
valtext.transition().text(function() {
console.log(index);
var total = 0;
for (var n = 0; n < data.series.length; n++) {
total += data.series[n].values[index]
}
return total;
});
});
svg.call(slider);
return svg.node()
}