2012-02-10 65 views
0

我希望这个快速的描述和图像将与谁有类似的问题,因此建议/修复的人敲响。高动态数据列图与动态数据列对齐

我有一个列图,我正在动态地添加数据(通过jQuery解析XML文件)。

由于某些原因,在添加数据后,不同系列的对齐会稍微偏离。在我通过可见/不可见切换其中一个系列后(通过单击图例中的系列),该问题将自行修复。

当我通过硬编码的数字添加数据,只是为了确保它的工作原理,它的效果很好。

这里是图像: enter image description here

黄色系列的最后一个系列添加到图表,红色和紫色系列排队拨动5系列之一的知名度后确定。

任何帮助将不胜感激!

UPDATE与所述数据信息:

  • 我有5个系列数据和10 x轴类别
  • 我建立数据的多维阵列作为我解析XML文件
  • 阵列长度为5,这5个索引中的每一个都包含长度为10的数组
  • 这是阵列在填充数据后的样子:

索引#:0值:0,0,0,0,0,0,0,0,0,0

索引#:1值:180,210,0,0,0,0,0 ,0180210

索引#:2值:22,4,0,0,0,0,0,0,22,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

你能发布一些导致这个问题的数据吗?更好的是在jsfiddle上创建一个例子。 – malonso 2012-02-12 20:58:19

+0

@malonso谢谢你的时间,我已更新我的问题与数据信息 – Seth 2012-02-13 14:10:22

+0

我真的希望我能给你一个答案,但它绝对看起来像这可能是一个错误。不要把流量从SO上拿走,但我可能会建议在HC论坛上张贴(http://highslide.com/forum/viewforum.php?f=8); Torstein和他的团队很棒,而且通常都很有回应。对不起,希望我有更好的消息。 – malonso 2012-02-14 02:02:10

回答

0

我找到了一个完美的解决办法:

-setting图表70的marginLeft缓解了列不对齐

- 因为某些原因,y轴标题文本显示在y中的问题轴蜱,所以我用以下使它可见:

yAxis: { 
     title: { 
      x:-20, 
      text: 'Schedule Days' 
     } 
    } 

(注意X:-20)

请告诉我奇怪的是,当我切换一个O f系列(通过在图例中单击它)yAxis标题文本恢复到它应该在的位置(由于上述修复,现在它已关闭20px)。

完美的修复方法会将yAxis文本放在切换其中一个系列后的位置,但至少可以通过这种方式显示,无论用户是否切换系列。