В настоящее время я использую графики в .NET, используя System.Windows.Forms.DataVisualization.Charting.Chart
. Пока что это кажется очень мощным и прекрасно работает. Однако существует огромная проблема с точки зрения автоматического расчета интервалов. Я использую много double
значений, и в библиотеках, таких как ZedGraph, он отлично справляется с этим. Он выбирает мин / макс / интервал просто отлично. Однако в MS Chart он может выбрать минимум 206,3334539832 и интервалы с аналогичной десятичной точностью. Очевидно, это выглядит довольно некрасиво.
Итак, я попытался просто сделать формат оси {0.00}
, и он прекрасно работает, когда загружает график. За исключением случаев, когда вы увеличиваете масштаб, вам нужна большая точность, возможно, в 4 десятичных разрядах вместо 2. Кажется, что я либо застрял с 9 десятичными разрядами все время, либо же постоянное фиксированное число, которое может сломаться, когда кто-то требует большей точности. Я предпочел бы подобрать точность, основанную на применяемом в настоящее время уровне масштабирования. Такие библиотеки, как ZedGraph и Dundas (которые, я считаю, MS даже использует!), Как правило, выбирают хорошие значения, которые меняются при увеличении и уменьшении масштаба.
Есть ли способ изменить точность интервалов при изменении рамки зума? Это, вероятно, какое-то простое свойство, которое я установил неправильно, но трудно сказать по миллионам свойств, которыми обладает эта вещь (особенно когда существует около 14 мест, представляющих концепцию Interval).