【发布时间】:2016-08-22 12:20:40
【问题描述】:
我正在尝试使用以下代码生成多个 c3 图表:
var datas=[[
["name", "position", "y", "bigRect", "myBars"],
["One 22", 2, 2, 2, 2],
["One 33", 3, 3, 2, 2],
["One 44", 4, 4, 2, 2]
],[
["name", "position", "y", "bigRect", "myBars"],
["Two 55", 5, 5, 2, 2],
["Two 66", 6, 6, 2, 2],
["Two 77", 7, 7, 2, 2]
],[
["name", "position", "y", "bigRect", "myBars"],
["Three 88", 8, 8, 2, 2],
["Three 99", 9, 9, 2, 2],
["Three 00", 0, 0, 2, 2]
]];
var iData = 0;
var charts = [];
for(iData in datas){
var d = datas[iData];
document.querySelector(".container").innerHTML += "<div id='chart"+iData+"'></div>";
var chartSelector = "#chart"+iData;
charts[iData] = c3.generate({
bindto: d3.select(chartSelector),
data: {
rows: d,
type: "scatter",
types: {
bigRect: "area",
myBars: "bar"
},
x: "position",
y: "y"
},
zoom: {
enabled: true
}
});
}
除了最后一张完美运行的图表外,所有图表看起来都是空的。 您可以在this JSbin link 上查看它的外观。
在隐藏图表上,所有的 SVG 都生成了,但是
- 包含
path绘制点和条的gSVG 元素设置在opacity: 0上,隐藏其所有内容。 - 缩放和工具提示也不起作用
你知道为什么 c3 会禁用第一个图表以及如何启用它们吗?
对于我糟糕的英语深表歉意,非常感谢您抽出宝贵的时间。
【问题讨论】:
标签: javascript d3.js c3.js