4

プログラムで pointLabels のオンとオフを切り替えようとしています。私はそれが次のように機能すると思いました:

    var data_ = [[1,1],[2,5],[4,9]];
    var graph = $.jqplot(id_graph, [data_], {
        series:[{pointLabels: { show:true } }]
        }
      );
    graph.series[0].pointLabels.show=false;
    graph.replot();

ただし、これでもポイント ラベルは表示されます。

助けてくれてありがとう!

4

3 に答える 3

2

この投稿は古いですが、問題の解決策を見つけました:

var data_ = [[1,1],[2,5],[4,9]];
var graph = $.jqplot(id_graph, [data_], {
    series:[{pointLabels: { show:true } }]
    }
  );
graph.series[0].plugins.pointLabels.show=false;
graph.replot();

使用する代わりに

graph.series[0].pointLabels.show=false;

使用する

graph.series[0].plugins.pointLabels.show=false;

私の場合、これはうまくいきました。

于 2016-01-05T15:14:18.683 に答える
1

Boroの答えに加えて、単一のシリーズでマーカーを切り替えたい場合は、次のように実行する方が高速です。

graph.drawSeries({markerOptions:{show:false}},seriesIndex); //redraw single series

多数のシリーズを使用すると、再プロットの呼び出しにコストがかかる可能性があります。

ここでフィドルを復活させました。

于 2012-05-31T16:25:19.397 に答える
1

あなたが望むのは実際にはオプションだと思いshowMarkerます。このコードではポイント ラベルを設定していないため、それらは表示されません。を使用showMarkerすると、グラフのドットのオン/オフを切り替えることができます。

それはあなたが実際に求めているものですか?それ以外の場合は、使用する例を提供してください。

これは、同様の問題に対して作成されたサンプルです。

こちらのサンプルをご覧ください。ボタンをクリックすると、メーカーの可視性の変更が発生します。


更新: このサンプルは、上記のアプローチを使用するソリューションを示しています。つまり、「pointLabels」の新しいパラメーターを変更しながらプロットを再プロットします。

jQuery(document).ready(function () {
    var data = [
        [1, 1],
        [2, 5],
        [4, 9]
    ];
    var graph;
    var isShowPointLabels = true;

    function makePlot(showPointLabels) {
        graph = $.jqplot("chart", [data], {
            series: [{
                pointLabels: {
                    show: showPointLabels
                }
            }]
        });
    }
    makePlot(isShowPointLabels);
    $("#click").click(function () {
        isShowPointLabels = !isShowPointLabels;
        makePlot(isShowPointLabels);
        graph.replot();
    });
});

drawSeries(...)この場合、 @Mark が示すように、単一のシリーズだけを再プロットする方法がわかりませんでしたmarker。これは、ここで行うことをお勧めします。

于 2012-05-30T10:06:33.323 に答える