Pregunta

Estoy implementando un diagrama de dispersión usando MS Chart Control .NET 3.5, WinForms, C #. Mis datos del eje x son DateTime y noté que no podía acercar más de una resolución de 1 día, a pesar de configurar ScaleView de la siguiente manera:

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

¿Alguien más ha tenido este problema? ¿Alguna idea?

¿Fue útil?

Solución

Descubrí esto ... tal vez no hice RTFM lo suficientemente cerca, pero no fue obvio en la demostración interactiva.

Establecer

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

y luego me permitió hacer zoom a lo largo del eje x muy bien.

Otros consejos

¡Funciona genial! Muy útil y obligatorio si desea tener un comportamiento de zoom suave.
No tropecé con él, aunque hice RTFM :-)

Sin embargo, si maneja dobles o flotantes en lugar de tipos basados ??en números enteros (como horas o días), establecer el intervalo en cero puede ser un poco extremo: al hacer zoom, terminará teniendo etiquetas demasiado precisas como 2 , 907343253253235

Una buena combinación es usar estas dos propiedades:

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

de esta manera puede hacer zoom tanto como desee, mientras controla la precisión a un nivel razonable

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top