Ich versuche, ein Liniendiagramm aus einem Dataset zu erstellen, während X-Achse kategorisch zu bleiben. Für den Betrachter wie ein Liniendiagramm mit äquidistantem Abstand es zwischen Beobachtungen X-Koordinaten aussehen:Liniendiagramm mit ordinal x-Achse mit d3.js und nvd3.js
(1 ------ ------ 5 30 ------ 600)
Denn jetzt ich so etwas wie dieses bin immer:
(1-5 ----- 30 ------------------- 600)
Dies ist mein Datensatz:
var ds1 = [
{
key: 'VAR-1',
color: '#FF7F0E',
values: [
{ "x" : "600", "y" : 0.07706}
, { "x" : "30", "y" : 0.00553}
, { "x" : "5", "y" : 0.00919}
, { "x" : "1", "y" : 0.00969}
]
}
];
Ich habe versucht zu erstellen und die Ordnungs Achse eingestellt es in der Linie Diagrammobjekt:
var chart =nv.models.lineChart()
.margin({top: 10, bottom: 40, left: 60, right: 30});
var x = d3.scale.ordinal().domain(["1","5", "30", "600"]);
chart.xAxis.scale(x);
chart.yAxis
.tickFormat(d3.format(',.3f'));
chart.forceY([0]);
d3.select('#exampleOne')
.datum(ds1)
.transition().duration(500)
.call(chart);
Nichts scheint jedoch auf dem Grundstück zu ändern.
Ich frage mich, könnte die Ordinalachse überhaupt in der NVD3 Liniendiagramm-Implementierung aktiviert sein oder dieses Liniendiagramm wurde nur für numerische Daten geschrieben?
PS: Ich bin neu bei d3.js, also könnte ich hier etwas falsch machen.
Können Sie Ihre Lösung posten? – Becky