いくつかのドリルダウン機能でハイチャートを使用しています。HighChart:プロットラインとプロットのクリックイベント
私の場合、私はonclickイベントのエリアチャートを持っています。
私は、ユーザーが線を追加してグラフの色を変更するために領域プロットをクリックさせたいと思っています。したがって、私は2つの機能を持っています:1つはチャートの色を変更し、もう1つはユーザーがクリックした線を追加します。以下は
はプロットラインのクリックイベントである:chart: {
type: 'area',
events: {
click: function(evt) {
var xValue = evt.xAxis[0].value;
var xAxis = evt.xAxis[0].axis;
$.each(xAxis.plotLinesAndBands,function(){
if(this.id===myPlotLineId)
{
this.destroy();
}
});
xAxis.addPlotLine({
value: xValue,
width: 1,
color: 'red',
//dashStyle: 'dash',
id: myPlotLineId
});
}
}
},
そして、これはplotOptions
plotOptions: {
series: {
point: {
events: {
click: function(event) {
//selector
if(previousPoint){
previousPoint.update({ color: '#FFC7C3' });
}
this.update({ color: '#fe5800' });
//drilldown trigger
var date = this.category.replace(/\-/g,'')
$("#datepicker").click();
//put somewhere else not in the custom
$("#drilldowndate").html(parseInt(date));
$(window).scrollTop(1700);
window.setTimeout(function(){
$("#trendDrill").click();
},500);
window.setTimeout(function(){
$("#periodChecker").text($(".ifNoDrill").data("target"));
},1000);
}
}
}
}
},
内にある色の更新イベント、と私はaddplotline
機能や更新を希望しますプロットカラー機能は両方とも同じクリックで機能するので、ユーザーが目的の領域をクリックすると、チャートが特定の色を変更し、プロットラインが表示されます。
JSフィドルデモ:http://jsfiddle.net/Xm4vW/70/
これは私が達成したかったものです。 1つの余分な質問、私は私のシリーズを更新した後、どのようにプロットラインのすべてを破壊することができますか? – anson920520
再度plotLinesをループし、.remove()を使ってそれらを削除することができます:http://jsfiddle.net/Xm4vW/74/ –
残念ですが最後の質問は何ですか?私は別のチャートをクリックしたときにこの関数が他のチャートのプロットラインをクリアしないことを知りました。アップデートを参照してください – anson920520