3

jqPlot折れ線グラフがあり、X値の蛍光ペンテキストをカスタマイズする方法を考えています。

そう。私は次のものを持っています:

var line1=[100, 68, 63, 36, 28];
var line2=[100, 71, 68, 42, 32];
var line3=[100, 60, 45, 15, 5];
var line4=[100, 76, 58, 22, 8];
var plot3 = $.jqplot('chart3', [line1,line2,line3,line4], {
axes:{
      xaxis: {
               ticks: [  [1, 'group1'], 
                         [2, 'group2'], 
                         [3, 'group3'], 
                         [4, 'group4'], 
                         [5, 'group5']
                      ],
               tickOptions:{
                      showGridline: false,
               },
            },
      yaxis:{
             label:'Percentage',
             labelRenderer: $.jqplot.CanvasAxisLabelRenderer,
             min : 0,
             max : 100,
             pad : 0,
             numberTicks : 11,
            }
    },

X軸がgroup1 group2などを読んでグラフを正しく表示します...ただし、蛍光ペンオプションを追加し、たとえばline1 tick 2にカーソルを合わせると、ボックスに「2.0、68」が表示されます。私がやりたいのは、「group2、68」を表示することです。

formatString パラメータをいじってみましたが、うまくいきません。

誰かが私を正しい方向に向けることができますか?

ありがとう。

4

2 に答える 2

2

最善の解決策ではないかもしれませんが、あなたが示したコードを考慮してすぐに思いつく最も適切な解決策を思いつくことができます。以下のコードを使用する必要があります。基本的に、マウスを動かすたびに、neighbourが null ではない場合 (これは、ハイライター ツールチップの表示に使用される条件です)、ツールチップを好きなものに変更しています。

$("#chart").bind('jqplotMouseMove', function(ev, gridpos, datapos, neighbor, plot) {
    if (neighbor) {
        $(".jqplot-highlighter-tooltip").html("" + plot.axes.xaxis.ticks[neighbor.pointIndex][1] + ", " + datapos.yaxis.toFixed(2) + " Oi");
    }
});

実際のコード サンプルについては、を参照してください。

于 2012-07-11T14:57:25.767 に答える
1

試しませんでしたが、このコードは期待どおりの動作をしているようですhttps://gist.github.com/2422033

JqPlotドキュメントハイライタープラグインのリンクは次のとおりです。tooltipAxesプロパティを確認してください

そして、ここに、デフォルトでサポートされていないツールチップにシリーズ名を表示するためのソリューションへのリンクがあります。コメント#1を確認してください https://bitbucket.org/cleonello/jqplot/issue/109/enable-highlighter-tooltip-to-display-label-of-the-series-on#comment-65301

于 2012-07-10T06:30:28.863 に答える