HighChart: événement de clic de ligne de tracé pour plusieurs graphiques

J’utilise highchart pour certaines fonctions de recherche.

J’ai une fonction pour permettre à l’utilisateur de cliquer sur un graphique et d’append une ligne. Mais ensuite, j’ai découvert que ma fonction comportait un bogue. Il ne doit y avoir qu’une seule ligne rouge entre ces graphiques, mais lorsque l’utilisateur clique sur l’autre graphique, la ligne rouge existante sur le premier graphique n’est pas supprimée.

Le belowing est la fonction que mes cartes partagent.

var myPlotLineId = "myPlotLine"; addPlotLine = function(evt) { var point = evt.point; var xValue = point.x; var xAxis = point.series.xAxis; Highcharts.each(xAxis.plotLinesAndBands, function(p) { if (p.id === myPlotLineId) { p.destroy(); } }); xAxis.addPlotLine({ value: xValue, width: 1, color: 'red', id: myPlotLineId }); }; 

Cela ne devrait permettre qu’une seule ligne rouge puisque j’utilise un identifiant.

Le ci-dessous est la situation actuelle. entrez la description de l'image ici

Depuis que j’utilise id pour l’insortinggue, cela ne devrait pas permettre deux lignes, veuillez voir mon exemple:

http://jsfiddle.net/Xm4vW/74/

Je veux seulement UN RED LINE au total sur beaucoup de cartes

MISE À JOUR 1:

J’ai essayé de redessiner () dans la nouvelle démo: http://jsfiddle.net/Xm4vW/80/

mais ça n’aide pas. S’il vous plaît, faites-moi savoir si la question n’est pas assez claire.

Il n’y a rien de tel que ‘Highcharts.each (xAxis.plotLinesAndBands, function (p)’. Itérez les graphiques par boucle et utilisez ‘removePlotLine (PlotLineID)’ au lieu de ‘destroy ()’:

 for(i=0;i 

Et mettre id entre parenthèses:

 id: 'myPlotLineId' 

voici jsfiddle http://jsfiddle.net/asadsarwar89/bh4kz9rw/