Highcharts / jQuery - détruire et reconstruire graphique avec des options originales
Se basant sur l'information dans ce fil: Mettre en œuvre propre de l'état - INACTIVE_STATE?
J'ai construit un tableau qui correspond à mes besoins - jsfiddle
J'ai ajouté quelques contrôles personnalisés pour permettre à l'utilisateur d'afficher/masquer toutes les séries et de cocher/décocher toutes les séries.
Ces tous les beaux travaux.
La dernière partie que je veux faire est de permettre à l'utilisateur de réinitialiser le tableau avec les options d'origine.
Cette partie j'ai aussi eu de travail, mais il y a un problème: une fois que le graphique est reconstruit, les fonctions qui permettent à l'utilisateur d'afficher/masquer/cocher/décocher ne fonctionnent plus parce que j'ai détruit et re-spécifié la variable qu'ils courent hors de.
Donc ma question(s) -
- est-ce la bonne façon de le détruire et de reconstruire le tableau, ou est-il une meilleure méthode?
- si c'est la manière de le faire, alors comment puis-je obtenir mon show/hide/cocher/décocher les fonctions de continuer à travailler après?
Le code de réinitialisation de la carte est ici:
//reset the chart to original specs
$('#resetChart').click(function(){
chart1.destroy();
chart1 = new Highcharts.Chart(optionsChart1,highlightSer);
});
highlightSer
est une fonction de rappel pour mettre en évidence certaines séries.
un exemple de code qui ne fonctionne plus par la suite:
var chart = chart1;
$('#showAll').click(function(){
for(i=0; i < chart.series.length; i++) {
chart.series[i].show();
}
});
merci!
OriginalL'auteur jlbriggs | 2011-10-24
Vous devez vous connecter pour publier un commentaire.
C'est la seule façon et Highcharts est assez intelligent de sorte que vous n'avez pas à vous soucier des fuites de mémoire.
Vous recréer le tableau, mais pas de l'affecter à la variable
chart
de nouveau.OriginalL'auteur Bhesh Gurung
Est-il une raison pour l'attribution du tableau à une nouvelle variable ici?
chart
ne pointera pas vers un graphe plus une fois que vous avez détruit. Si vous venez d'utiliserchart1
, qui vous re–assigner, tout semble fonctionner très bien. Ou ai-je raté quelque chose?OriginalL'auteur polarblau