Ich versuche, ein Diagramm mit D3.js zu plotten. file.json ist meine JSON-Datei. Datum und Uhrzeit sollten in der X-Achse und Verkäufe in der Y-Achse sein.Zeichnen Sie ein Diagramm mit D3.JS
Das ist meine JSON Struktur,
[
{
Date : "2017-12-17 18:30:01",
Sales : "50"
},
{ Date : "2017-12-17 17:30:00",
Sales : "20"
},
{
Date : "2017-12-17 16:30:00",
Sales : "10"
}
]
ich ein Diagramm Datum vs Anzahl der Verkäufe zeichnen möchten. Das ist mein JS: -
<!DOCTYPE html>
<meta charset="utf-8">
<style>
.line {
fill: none;
stroke: steelblue;
stroke-width: 2px;
}
</style>
<body>
<!-- load the d3.js library -->
<script src="https://d3js.org/d3.v4.min.js"></script>
<script>
d3.json("file.json", function(data) {
var canvas = d3.select("body").append("svg")
.attr("width", 500)
.attr("height", 500)
.attr("border", "black")
var group = canvas.append("g")
.attr("transform", "translate(100,10)")
var line = d3.line()
.x(function(d, i) {
return d.Date;
})
.y(function(d, i) {
return d.Sales;
});
group.selectAll("path")
.data(data).enter()
.append("path")
.attr("d", function(d){ return line(d) })
.attr("fill", "none")
.attr("stroke", "green")
.attr("stroke-width", 3);
});
</script>
Es zeigt Fehler: - Uncaught TypeError: Cannot read property 'line' of undefined
. Ich änderte von d3.svg.line()
zu d3.line()
, aber es zeigt jetzt leere Seite. Hier
Sie verwenden D3 v4. Also sollte es 'var line = d3.line()' sein. –
Jetzt zeigt es nichts. fill = None – codeclue
Und das ist, weil Sie keine Skalen haben, was ein anderes Problem ist. –