MS Chart Control Zoom MinSize проблема - PullRequest
       29

MS Chart Control Zoom MinSize проблема

10 голосов
/ 26 октября 2009

Я реализую точечную диаграмму, используя MS Chart Control .NET 3.5, WinForms, C #. Мои данные по оси x - DateTime, и я заметил, что я не могу увеличить разрешение меньше 1 дня, несмотря на настройку ScaleView следующим образом:

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

Кто-нибудь еще имел эту проблему? Есть идеи?

Ответы [ 2 ]

10 голосов
/ 29 октября 2009

Понял это ... возможно, я не достаточно близко познакомился с RTFM, но это не было очевидно из интерактивной демонстрации.

Установить

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

, а затем он позволил мне масштабировать вдоль оси х очень хорошо.

7 голосов
/ 03 ноября 2010

Прекрасно работает! Очень удобно и обязательно, если вы хотите иметь плавное масштабирование.
Не наткнулся на это, хотя я сделал RTFM: -)

Однако, если вы обрабатываете double или float вместо целочисленных типов (таких как часы или дни), установка интервала на ноль может быть немного экстремальной: при масштабировании у вас получатся слишком точные метки, например , 907343253253235

Хорошая комбинация - использовать эти два свойства:

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

таким образом, вы можете увеличивать столько раз, сколько хотите, сохраняя при этом точность на разумном уровне

...