4

ではjqPlot、グラフにレンダリングされた 2 つの系列があります。これらは異なる単位で測定された異なるデータを示しているため、それぞれに独自の y 軸 (yaxisおよびy2axis) があります。

jqPlotデータの範囲に合わせて両方の y 軸を自動的に作成します。min, max, ticksそれは問題ありません。データの範囲が大きく異なる可能性があるため、手動で軸を設定したくありません。

0ただし、両方の目盛りをy-axes同じレベルに合わせたいと思います。これは可能ですか?

注:値の間には数学的な関係がないため、たとえば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' },
  ]        
});
4

1 に答える 1

3

これは間違いなく jqplot のバグだと思います。

この 3 つのフィドル[1][2]および[3]を参照してください。最初のものは、jqplot の最後のリリースの例から抽出されています。2 つ目は、forceTickAt0 と alignTicks が無効になっているデフォルト モードを示しています。最後に、3 番目のものは元のものと同じですが、最初の系列の 2 番目のデータ値を負の値に変更しています。

最初の例で、ゼロがどのように整列されているかを確認できます。ただし、3 番目の例では、すべての設定は同じままですが、軸が整列しなくなりました。

jqplot の問題ページで、これに関する問題を提出してみてください。

それまでの間、問題を解決するには、値にオフセットを追加してすべてが正になるようにし、軸ラベルを書き直してこのオフセットの違いを示すことで、この問題を回避できます。ここで例を見ることができます。しかし、残念ながら、これはまだあなたが達成しようとしていたものではありません。

于 2012-09-08T10:58:06.550 に答える