2017-04-05 67 views
1

グラフ作成にAmchartsプラグインを使用しています。しかし、私は凡例を使ってグラフを隠して表示することに問題があります。Javascript - AmCharts凡例を使用してグラフを非表示にする

これは私の機能コードです:

function handleLegendClick(graph) { 
    var chart = graph.chart; 
    for(var i = 0; i < chart.graphs.length; i++) { 
    if (graph.id == chart.graphs[i].id) 
     chart.hideGraph(chart.graphs[i]); 
    else 
    chart.showGraph(chart.graphs[i]); 
    } 

    if (graph.id == chart.graphs['3'].id) 
     chart.hideGraph(chart.graphs['4']); 

    if (graph.id ==chart.graphs['4'].id) 
     chart.hideGraph(chart.graphs['3']); 

    chart.validateNow(); 
    // return false so that default action is canceled 
    return true; 
} 

このコードは機能していますが、私の問題はそれだけで1つのグラフを隠し、ユーザーが別の凡例をクリックしたときにもう一度グラフを示し、です。私がする必要があるのは、複数のグラフにラベルテキストとマーカーが割り当てられていることを隠すことです。グラフが隠れているときは、同じ凡例をクリックして隠れグラフを表示する必要があります。

私を助けてください。ありがとうございました。

答えて

0

あなたの説明から、デフォルトの凡例の振る舞いは、あなたのhandleClickコードを追加することなく求めているものとまったく同じです。私はそれのポイントが何であるか分かりません。

var chart = AmCharts.makeChart("chartdiv", { 
    // ... 
    "legend": { }, //default setup 
}); 

Here's an example with multiple graphs.

関連する問題