D3
OG
Old school D3 from simpler times
All examples
By author
By category
About
sconner
Full window
Github gist
The Trees in Champaign by Diameter
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <title>Trees in Champaign</title> <script type="text/javascript" src="https://d3js.org/d3.v3.min.js"></script> <style type="text/css"> body { background-color:rgba(89,173,120,1.00); } svg { background-color:rgba(185,228,246,1.00); margin:20px; } rect { fill: #75523A; } </style> </head> <body> <script type="text/javascript"> var svg = d3.select("body") .append("svg") .attr("width", 1200) .attr("height", 1500); d3.csv("Champaign-trees-diam-totals.csv", function(data) { data.sort(function(a, b) { return d3.descending(+a.avgDiameter, +b.avgDiameter); //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 Math.round((+d.avgDiameter) * 30); }) .attr("height", 8) .append("title") .text(function(d) { return "Champaign's " + d.totalSpecimens + " " + d.commonName + " trees have an average diameter of " + Math.round((+d.avgDiameter)) + " feet."; }); }); </script> </body> </html>
Modified
http://d3js.org/d3.v3.min.js
to a secure url
https://d3js.org/d3.v3.min.js