Question

J'implémente un nuage de points à l'aide de MS Chart Control .NET 3.5, WinForms, C #. Mes données sur l'axe x sont DateTime et j'ai remarqué que je ne pouvais pas effectuer un zoom inférieur à une résolution de 1 jour, malgré le réglage de ScaleView comme suit:

chart1.ChartAreas["MyChart"].AxisX.ScaleView.MinSize = 4;
chart1.ChartAreas["MyChart"].AxisX.ScaleView.MinSizeType = DateTimeIntervalType.Hours;

Quelqu'un at-il eu ce problème? Des idées?

Était-ce utile?

La solution

J'ai compris ... peut-être que je n'avais pas suffisamment rapproché RTFM, mais ce n'était pas évident d'après la démonstration interactive.

Définir

chart1.ChartAreas["MyChart"].CursorX.Interval = 0;

et puis cela m'a permis de zoomer parfaitement sur l'axe des x.

Autres conseils

Fonctionne très bien! Très pratique et indispensable si vous souhaitez avoir un comportement de zoom fluide.
Je n’ai pas trébuché dessus, même si j’ai fait RTFM: -)

Toutefois, si vous gérez les doublons ou les flottants au lieu de types basés sur des nombres entiers (tels que des heures ou des jours), le réglage de l'intervalle sur zéro peut être un peu extrême: lors du zoom, vous obtiendrez des étiquettes trop précises telles que 2 , 907343253253235

Une bonne combinaison consiste à utiliser ces deux propriétés:

chartArea1.AxisY.ScaleView.MinSize = 0;
chartArea1.CursorY.Interval = 0.001;

Ainsi, vous pouvez zoomer autant que vous le souhaitez, tout en contrôlant la précision à un niveau raisonnable

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top