nvd3 を使用して積み上げ縦棒グラフを作成しようとしています。ウェブサイトの例のようにランダムに生成された値とは対照的に、個別のデータ値を使用します。
グループ/積み上げ棒グラフのライブ コード例を試してみて、独自の値を含む JSON データを挿入しました。私が試みたのは、横棒グラフから JSON データを取得し、それを縦棒グラフのデータとして配置することでした。
これは、グループ/積み上げ棒グラフのデータの代わりにライブ コード例で使用したデータです。
[
{
"key": "Series1",
"color": "#d62728",
"values": [
{
"label" : "Group A" ,
"value" : -1.8746444827653
} ,
{
"label" : "Group B" ,
"value" : -8.0961543492239
} ,
{
"label" : "Group C" ,
"value" : -0.57072943117674
} ,
{
"label" : "Group D" ,
"value" : -2.4174010336624
} ,
{
"label" : "Group E" ,
"value" : -0.72009071426284
} ,
{
"label" : "Group F" ,
"value" : -0.77154485523777
} ,
{
"label" : "Group G" ,
"value" : -0.90152097798131
} ,
{
"label" : "Group H" ,
"value" : -0.91445417330854
} ,
{
"label" : "Group I" ,
"value" : -0.055746319141851
}
]
},
{
"key": "Series2",
"color": "#1f77b4",
"values": [
{
"label" : "Group A" ,
"value" : 25.307646510375
} ,
{
"label" : "Group B" ,
"value" : 16.756779544553
} ,
{
"label" : "Group C" ,
"value" : 18.451534877007
} ,
{
"label" : "Group D" ,
"value" : 8.6142352811805
} ,
{
"label" : "Group E" ,
"value" : 7.8082472075876
} ,
{
"label" : "Group F" ,
"value" : 5.259101026956
} ,
{
"label" : "Group G" ,
"value" : 0.30947953487127
} ,
{
"label" : "Group H" ,
"value" : 0
} ,
{
"label" : "Group I" ,
"value" : 0
}
]
}
]
javascript の data() への関数呼び出しを data に置き換えました。
nv.addGraph(function() {
var chart = nv.models.multiBarChart();
chart.xAxis
.tickFormat(d3.format(',f'));
chart.yAxis
.tickFormat(d3.format(',.1f'));
d3.select('#chart svg')
.datum(data)
.transition().duration(500).call(chart);
nv.utils.windowResize(chart.update);
return chart;
});
グラフはシリーズに適切にラベルを付けていますが、バーは表示されません。このグラフはこのタイプのデータを取りませんか? 水平バーを使用してデータを処理しましたが、可能であれば垂直バーを使用したいと考えています。