Add a bit of sample code for a pie chart
This commit is contained in:
parent
c3b86d493e
commit
1eebe65ed5
|
@ -2,7 +2,11 @@ body {
|
||||||
padding-top: 5rem;
|
padding-top: 5rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
.starter-template {
|
.content-box {
|
||||||
padding: 3rem 1.5rem;
|
padding: 3rem 1.5rem;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.chart-box {
|
||||||
|
border: 1px solid grey;
|
||||||
|
}
|
||||||
|
|
|
@ -43,7 +43,7 @@
|
||||||
|
|
||||||
<main role="main" class="container">
|
<main role="main" class="container">
|
||||||
|
|
||||||
<div class="starter-template">
|
<div class="content-box">
|
||||||
<h1>Hallo!</h1>
|
<h1>Hallo!</h1>
|
||||||
<p class="lead">
|
<p class="lead">
|
||||||
Mit Bootstrap sieht alles per Default ein wenig hübscher aus.<br>
|
Mit Bootstrap sieht alles per Default ein wenig hübscher aus.<br>
|
||||||
|
@ -53,6 +53,11 @@
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<div class="content-box chart-box">
|
||||||
|
<p>Hier erscheint gleich ein Test-Diagramm.</p>
|
||||||
|
<div id="testchartbox"></div>
|
||||||
|
</div>
|
||||||
|
|
||||||
</main><!-- /.container -->
|
</main><!-- /.container -->
|
||||||
|
|
||||||
|
|
||||||
|
@ -80,6 +85,7 @@
|
||||||
<script type="text/javascript" src="js/d3/d3.min.js"></script>
|
<script type="text/javascript" src="js/d3/d3.min.js"></script>
|
||||||
<script type="text/javascript" src="js/util.js"></script>
|
<script type="text/javascript" src="js/util.js"></script>
|
||||||
<script type="text/javascript" src="js/preprocessor.js"></script>
|
<script type="text/javascript" src="js/preprocessor.js"></script>
|
||||||
|
<script type="text/javascript" src="js/diagrams.js"></script>
|
||||||
<script type="text/javascript" src="js/main.js"></script>
|
<script type="text/javascript" src="js/main.js"></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
|
@ -0,0 +1,37 @@
|
||||||
|
"use strict";
|
||||||
|
|
||||||
|
/*
|
||||||
|
* This may be restructured in the future - code to create diagrams will live here.
|
||||||
|
*/
|
||||||
|
|
||||||
|
function createTestPieChart(containerId, dataset) {
|
||||||
|
var width = 360;
|
||||||
|
var height = 360;
|
||||||
|
var radius = Math.min(width, height) / 2;
|
||||||
|
var color = d3.scaleOrdinal(d3.schemeCategory20b);
|
||||||
|
|
||||||
|
var svg = d3.select(containerId)
|
||||||
|
.append("svg")
|
||||||
|
.attr("width", width)
|
||||||
|
.attr("height", height)
|
||||||
|
.append("g")
|
||||||
|
.attr("transform", "translate(" + (width / 2) + "," + (height / 2) + ")");
|
||||||
|
|
||||||
|
var arc = d3.arc()
|
||||||
|
.innerRadius(0)
|
||||||
|
.outerRadius(radius);
|
||||||
|
|
||||||
|
var pie = d3.pie()
|
||||||
|
.value(function(d) { return d.count; })
|
||||||
|
.sort(null);
|
||||||
|
|
||||||
|
var path = svg.selectAll("path")
|
||||||
|
.data(pie(dataset))
|
||||||
|
.enter()
|
||||||
|
.append("path")
|
||||||
|
.attr("d", arc)
|
||||||
|
.attr("fill", function(d, i) {
|
||||||
|
return color(d.data.label);
|
||||||
|
});
|
||||||
|
|
||||||
|
}
|
13
js/main.js
13
js/main.js
|
@ -9,4 +9,17 @@ console.log("Let's load and preprocess all data properly.");
|
||||||
preprocessor.load(function(data) {
|
preprocessor.load(function(data) {
|
||||||
console.log("Results are in!");
|
console.log("Results are in!");
|
||||||
console.log(data);
|
console.log(data);
|
||||||
|
|
||||||
|
// Create a very basic dataset for a chart
|
||||||
|
var dataset = [
|
||||||
|
{ label: "SPD", count: 25 },
|
||||||
|
{ label: "CDU", count: 30 },
|
||||||
|
{ label: "Die Grünen", count: 40 },
|
||||||
|
{ label: "Die Linken", count: 15 },
|
||||||
|
{ label: "Die Rechten", count: 20 },
|
||||||
|
{ label: "Die Partei", count: 5 },
|
||||||
|
];
|
||||||
|
// Pass the dataset to the chart function
|
||||||
|
createTestPieChart("#testchartbox", dataset);
|
||||||
|
|
||||||
});
|
});
|
Loading…
Reference in New Issue