139
|
1 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
|
2 <html>
|
|
3 <head>
|
|
4 <title>{{title}}</title>
|
|
5 <style>
|
|
6 .svgchart rect {
|
|
7 fill: steelblue;
|
|
8 }
|
|
9 .svgchart text {
|
|
10 fill: white;
|
|
11 font: 10px sans-serif;
|
|
12 text-anchor: end;
|
|
13 }
|
|
14 </style>
|
|
15 <script>{{d3}}</script>
|
|
16 <script>
|
|
17 </script>
|
|
18 </head>
|
|
19 <body>
|
|
20 <h1>{{title}}</h1>
|
|
21 <svg class="svgchart"></svg>
|
|
22 <script>
|
|
23 var data = {{data}};
|
155
|
24 var labels = {};
|
139
|
25 var width = 420,
|
|
26 barHeight = 20;
|
|
27 var x = d3.scale.linear()
|
|
28 .domain([0, d3.max(data)])
|
|
29 .range([0, width]);
|
|
30 var chart = d3.select(".svgchart")
|
|
31 .attr("width", width)
|
|
32 .attr("height", barHeight * data.length);
|
|
33 var bar = chart.selectAll("g")
|
|
34 .data(data)
|
|
35 .enter().append("g")
|
|
36 .attr("transform", function(d, i) { return "translate(0," + i * barHeight + ")"; });
|
|
37 bar.append("rect")
|
|
38 .attr("width", x)
|
|
39 .attr("height", barHeight - 1);
|
|
40 bar.append("text")
|
|
41 .attr("x", function(d) { return x(d) - 3; })
|
|
42 .attr("y", barHeight / 2)
|
|
43 .attr("dy", ".35em")
|
155
|
44 .text(function(d) {
|
|
45 var label = labels[String(d)];
|
|
46 if (label == undefined) {
|
|
47 return d;
|
|
48 } else {
|
|
49 return label + " : " + d;
|
|
50 }
|
|
51 });
|
139
|
52 </script>
|
|
53 </body>
|
|
54 </html>
|