Ответ 1
Выяснил это... возможно, я не закрыл RTFM достаточно, но это было не очевидно из интерактивной демонстрации.
Set
chart1.ChartAreas["MyChart"].CursorX.Interval = 0;
а затем он позволил мне масштабировать вдоль оси х очень хорошо.
Я реализую график рассеяния, используя MS Chart Control.NET 3.5, WinForms, С#. Мои данные по оси x - DateTime, и я заметил, что не могу увеличить масштаб меньше разрешения 1 день, несмотря на то, что вы устанавливаете ScaleView следующим образом:
chart1.ChartAreas["MyChart"].AxisX.ScaleView.MinSize = 4;
chart1.ChartAreas["MyChart"].AxisX.ScaleView.MinSizeType = DateTimeIntervalType.Hours;
У кого-нибудь еще была эта проблема? Любые идеи?
Выяснил это... возможно, я не закрыл RTFM достаточно, но это было не очевидно из интерактивной демонстрации.
Set
chart1.ChartAreas["MyChart"].CursorX.Interval = 0;
а затем он позволил мне масштабировать вдоль оси х очень хорошо.
Отлично работает!
Очень удобная и обязательная, если вы хотите иметь плавное поведение при масштабировании.
Не наткнулся на него, хотя я сделал RTFM: -)
Однако, если вы обрабатываете удвоения или float вместо целых типов (например, часов или дней), установка интервала в Zero может быть немного экстремальной: при масштабировании вы получите слишком точные метки, такие как 2, 907343253253235
Хорошая комбинация заключается в использовании этих двух свойств:
chartArea1.AxisY.ScaleView.MinSize = 0;
chartArea1.CursorY.Interval = 0.001;
таким образом вы можете масштабировать столько, сколько хотите, но все же контролируя точность на разумном уровне