【问题标题】:jqPlot aligning zeroes for different y-axesjqPlot为不同的y轴对齐零
【发布时间】:2012-08-28 16:17:09
【问题描述】:

jqPlot 中,我在图中呈现了两个系列。它们显示不同的数据,以不同的单位测量,因此它们都有自己的 y 轴(yaxisy2axis)。

jqPlot 自动构造两个 y 轴以适应数据范围。没关系 - 我不想手动设置轴 min, max, ticks,因为数据的范围可能会有很大差异。

但是,我想将两个 y-axes0 刻度对齐到同一级别。这可能吗?

注意: 有人可能会争辩说,没有一点可以对齐,例如,0° C 温度与0 ms^-1 风速,因为这些值之间没有数学关系。但如果是这样的话,它看起来确实好多了,而且看起来很好是图表的重点:)

测试示例:

var data1 = [[0, 0], [3, 50]];
var data2 = [[0, 0], [3, -50]];

$.jqplot('chart', [data1, data2], {
  series: [
    { yaxis: 'yaxis' },
    { yaxis: 'y2axis' },
  ]        
});

【问题讨论】:

    标签: javascript jqplot


    【解决方案1】:

    我认为这绝对是 jqplot 中的一个错误。

    请参阅这三个小提琴[1][2][3]。第一个是从 jqplot 最新版本中的示例中提取的。第二个,显示默认模式,禁用 forceTickAt0 和 alignTicks。最后,第三个和原来的一样,只是把第一个系列的第二个数据值改成负值。

    您可以在第一个示例中看到零是如何对齐的。然而,在第三个示例中,尽管所有设置都保持不变,但轴不再对齐。

    您可以尝试在jqplot issues page 中为此提出问题。

    同时,为了解决您的问题,您可以通过向值添加偏移量来解决此问题,以便所有值都变为正值,然后重写轴标签以显示此偏移量差异。您可以看到example here。但是,恐怕这仍然不是您想要完成的目标。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-12-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-05-04
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多