4

Y軸の値がかなり変化する可能性のあるグラフがあります。私が持っている唯一の情報は次のとおりです。

  • すべての値は整数です
  • 値は>=0です

ここで、ボラティリティが非常に低い値がほとんどない場合(極端に考えてみましょう)[0,0,0,0,0,0,0]、Y軸の反復値を取得しました。次のようになります。

 |
1+
 |
1+
 |
1+
 |
0+
 |
0+
 |
0+-----------------------------------------

私が達成したいのは、jqPlotに繰り返しの値をスキップさせ、Y軸(一番下と一番上のもの)に2ティック(0,1)だけを表示するようにすることです。

何か案は?参照用のコードの追加:

yaxis:{
    label:'Count',
    padMin: 0,
    labelRenderer: $.jqplot.CanvasAxisLabelRenderer,
    tickRenderer: $.jqplot.CanvasAxisTickRenderer,
    tickOptions:{
       formatString:'%d'
    }
}
4

5 に答える 5

2

これはまったくバグではありません。jqplotは、グラフィックスである種のズームを使用するためformatString:'%d'、y軸にint値を表示するように強制していると言います。この行を削除すると、などの値にフォールバックします1.3, 1.8, ...。int値のtickIntervalを表示したいと思います(この投稿は、応答なしで同じ問題を探していることがわかりました)。

これはまだできないと思います

于 2012-09-13T14:48:45.547 に答える
1

整数桁のみを表示する必要がある場合は、カスタム文字列フォーマッタを使用できます。

 tickOptions:{
   formatString:'%d',
   formatter: yourCustomFormater
}

'yourCustomFormatter'が拡張されたデフォルト'$.jqplot.DefaultTickFormatter':

var yourCustomFormatter = function (format, val) {
    if (typeof val == 'number') {
        if (!format) {
            format = $.jqplot.config.defaultTickFormatString;
        } 

        if (val % 1 === 0) {
            return $.jqplot.sprintf(format, val);
        } else {
            //ignore items with not integer values
            return '';
        }
    }
    else {
        return String(val);
    }
};

ただし、他の蛍光ペンプラグインを使用しない限り、このフォーマッターはデフォルトでバーのラベルに影響することに注意してください。

于 2014-01-24T14:23:27.590 に答える
0

プラグインのバグです。デモコードで再現できますが、私自身も同じ問題を抱えています。

今のところ、プラグインの現在の欠陥であるため、チャートをより小さなディメンションに設定します。

これがお役に立てば幸いです。

于 2012-09-12T20:11:46.717 に答える
0

あなたはこれを使うことができます

axes:{ xaxis:{ numberTicks: 2 } }

于 2014-12-13T08:50:19.370 に答える
0

私にとって、以下は問題を修正しました:1-パラメータtickOptionsはtickOptionsでした:{formatString: "%d"} 2つの要素が同じ整数値に丸められた場合にtickOptions:{formatString: "%.2f"}に変更しました、そのティックは2回表示されます。

2-パラメータnumberTicksを追加しました:軸に4つのプロットしか持たないようにするための4

これらの2つの変更により、現在の問題は修正されましたが、グラフに渡されたデータに従って再び表示される場合があります

于 2017-05-02T12:31:25.990 に答える