Problema MinSize Zoom Zoom controllo MS Chart
Domanda
Sto implementando un diagramma a dispersione usando MS Chart Control .NET 3.5, WinForms, C #. I miei dati sull'asse x sono DateTime e ho notato che non potevo zoomare in meno di una risoluzione di 1 giorno, nonostante l'impostazione di ScaleView come segue:
chart1.ChartAreas["MyChart"].AxisX.ScaleView.MinSize = 4;
chart1.ChartAreas["MyChart"].AxisX.ScaleView.MinSizeType = DateTimeIntervalType.Hours;
Qualcun altro ha avuto questo problema? Qualche idea?
Soluzione
Capito questo ... forse non ho RTFM abbastanza vicino, ma non era ovvio dalla demo interattiva.
Set
chart1.ChartAreas["MyChart"].CursorX.Interval = 0;
e poi mi ha permesso di zoomare lungo l'asse x bene.
Altri suggerimenti
Funziona alla grande!
Molto utile e obbligatorio se si desidera avere un comportamento regolare dello zoom.
Non ci siamo imbattuti, anche se ho fatto RTFM :-)
Tuttavia, se gestisci doppi o float anziché tipi basati su numeri interi (come ore o giorni), impostare l'intervallo su Zero potrebbe essere un po 'estremo: durante lo zoom, finirai per avere etichette troppo precise come 2 , 907343253253235
Una buona combinazione è usare queste due proprietà:
chartArea1.AxisY.ScaleView.MinSize = 0;
chartArea1.CursorY.Interval = 0.001;
in questo modo puoi zoomare quanto vuoi, pur controllando la precisione a un livello ragionevole