我希望这个快速的描述和形象能够与有类似问题并因此提出建议/解决方案的人敲响钟声。
我有一个列图,我正在动态添加数据(通过jQuery解析XML文件)。
由于某种原因,在添加数据之后,不同系列的对齐有点偏差。我通过可见/不可见切换其中一个系列(通过点击图例中的系列)来解决问题。
当我通过对数字进行硬编码来添加数据时,为了确保它能够正常工作,它可以很好地工作。
这是图像:
黄色系列是添加到图表中的最后一个系列,红色和紫色系列在切换5系列之一的可见性后排成一行。
任何帮助将不胜感激!
更新数据信息:
索引号:0值:0,0,0,0,0,0,0,0,0,0
索引号:1值:180,210,0,0,0,0,0,0,180,210
指数#:2价值:22,4,0,0,0,0,0,0,2,2,4
索引号:3值:0,0,0,0,0,0,0,0,0,0
索引号:4值:200,30,0,0,0,0,0,0,4,0
我使用以下JS代码将数据添加到图表中:
for (var c_ary_bs = 0; c_ary_bs < ary_bs_schedule_orig.length; c_ary_bs++) {
chart.series[c_ary_bs].setData(ary_bs_schedule_orig[c_ary_bs]);
}
希望这会有所帮助,谢谢!
更新2,更多信息
我已经对添加到阵列中的数据进行了硬编码,以帮助查明问题:
chart.series[0].setData([0, 0, 0, 0, 0, 0, 0, 0, 0, 0]);
chart.series[1].setData([180, 210, 0, 0, 0, 0, 0, 0, 180, 210]);
chart.series[2].setData([22, 4, 0, 0, 0, 0, 0, 0, 22, 4]);
chart.series[3].setData([0, 0, 0, 0, 0, 0, 0, 0, 0, 0]);
chart.series[4].setData([200, 30, 0, 0, 0, 0, 0, 0, 4, 0]);
alert('done')
当警报触发时,图表列正确对齐,点击“确定”以关闭警报后,会发生对齐问题,如上图所示。
答案 0 :(得分:0)
我发现了一个不完美的修复:
- 将图表的marginLeft设置为70可以缓解未对齐的列的问题
- 由于某种原因,y轴标题文本显示在y轴刻度上,因此我使用以下内容使其可见:
yAxis: {
title: {
x:-20,
text: 'Schedule Days'
}
}
(注意x:-20)
奇怪的是,当我切换其中一个系列时(通过在图例中单击它),yAxis标题文本将恢复到应该的位置(由于上述修复,现在为20px)。
在我切换其中一个系列之后,完美修复会将yAxis文本放在原处,但至少这样,无论用户是否切换系列,它现在都可见。