6
votes

Appeler réinitialiser zoom manuellement

J'ai un tableau où j'ai permis de zoomer dans / out. Chaque fois que l'utilisateur zoom avant / out "Réinitialiser le zoom" apparaît.

Maintenant, j'ai ajouté un nouveau bouton Personnaliser où j'ai besoin de montrer x les données de colonne les plus mises à jour. J'ai changé de catégories et de données, mais j'ai besoin également de réinitialiser le zoom.

Cela peut-il être fait? Je veux toujours garder le "Réinitialiser zoom" lorsque l'utilisateur tente de zoomer / out. PS: J'ai essayé de faire cela.zoomout () mais le "Réinitialiser le zoom" est apparu: (

Cordialement Chanan


4 commentaires

Pourriez-vous créer Jsfiddle? Pour réinitialiser le zoom, vous pouvez également utiliser graph.x / axe [0] .Setextremes (null, null)


En raison de la stratégie de l'entreprise, je ne peux pas montrer avec Jsfiddle. Mais l'idée principale: j'ai des cartes maîtres / détaillées, où lors de la sélection du maître, il mettra à jour le graphique détaillé. J'ai également activé le zoom sur la carte détaillée. Maintenant, je souhaite ajouter un bouton personnalisé sur la carte détaillée, la bande de traction de la bande principale, réinitialisez les catégories dans la carte détaillée et réinitialisez le zoom - actuellement, j'ai le problème de la suppression du bouton "Réinitialiser le zoom" et réinitialiser le zoom


PS: grapht.x / yaxis [0] .Setextremes (NULL, NULL) n'a pas fonctionné


Utilisez des fausses données par exemple. Je ne sais pas comment puis-je vous aider, quand je ne peux pas voir quoi avez-vous fait? Je pense que cela devrait être possible d'atteindre.


6 Réponses :


10
votes

La suggestion de Pawel d'appeler xxx

fonctionne, BTW, comme indiqué ici: http: // jsfiddle. NET / TVHG6 /

Cependant, bien que le graphique effectue un zoom arrière, le bouton RESETZOOM est toujours suspendu, je ne sais pas comment le cacher. Calling Chart.Resetzoombutton.Hide () le cache, mais cela le fait de manière permanente.


1 commentaires

Vous pouvez faire comme "graphique.zoomout ()". Il masquera également la réinitialisation du bouton de zoom. Voir ici jsfiddle.net/tvhg6/18



4
votes

Comme suggéré ici xxx

mais garder à l'esprit que l'appelant graphique.zoom () ne déclenche pas graph.events.selection événement. Ce qui est déclenché si vous cliquez sur "Réinitialiser le bouton" manuellement ou de manière programmatique $ (". Bouton Highcharts '). Cliquez sur ();


0 commentaires

3
votes

Si vous souhaitez réinitialiser le zoom sur un bouton externe, cliquez-le comme suit:

xAxis: { categories: xAxisCategories
                ,events: {
      afterSetExtremes: function() {
        $('.highcharts-button').hide();
      }
    }}


0 commentaires

1
votes

Je viens d'appeler l'événement du bouton du bouton et cela a fonctionné bien.

donné: v_chart est variable pour le graphique Highcharts; P>

if (typeof v_chart.resetZoomButton !== 'undefined') {
    v_chart.resetZoomButton.element.onclick();
}


0 commentaires

0
votes
  1. masque le bouton de réinitialisation d'origine li>
     buttons: {
                        resetButton: {
                            symbol: 'url(redo_icon.svg)',
                            _titleKey: "resetZoom",
                            y: 20,
                            x: -20,
                            onclick: function () {
                                this.xAxis[0].setExtremes(null,null);
                                this.yAxis[0].setExtremes(null,null)
                            }
                        }
                    }
    

0 commentaires

0
votes

Nous avons eu une situation similaire - User Zooms, nous ajoutons un bouton "Enregistrer ce zoom étage", l'utilisateur clique sur le bouton, nous enregistrons le nouveau temps min / maximum, mais nous devons maintenant faire disparaître la réinitialisation du zoom. < P> Ce code l'a fait et le bouton revient si l'utilisateur zoome encore plus loin: xxx


0 commentaires