【发布时间】:2017-05-03 14:46:41
【问题描述】:
我有一个图表和三个图表区域,它们在视图、缩放、光标中对齐: this is my related previous post。除了三个 ChartArea 在开始时没有对齐之外,所有事情都运行良好。按照问题的图像:
我认为这取决于数字的 Y 值轴数。根据一些研究,我尝试了以下配置:
// selezione e zoom
dlChart.ChartAreas[VOLTAGE_AREA].CursorX.Interval = 1;
dlChart.ChartAreas[VOLTAGE_AREA].CursorX.IsUserEnabled = true;
dlChart.ChartAreas[VOLTAGE_AREA].CursorX.IsUserSelectionEnabled = true;
// generale
dlChart.ChartAreas[VOLTAGE_AREA].AxisX.LabelStyle.Format = "dd/MM/yy - HH:mm:ss.fff";
dlChart.ChartAreas[VOLTAGE_AREA].AxisX.ScaleView.Zoomable = true;
dlChart.ChartAreas[VOLTAGE_AREA].AxisY.LabelStyle.Format = "D5";
在女巫最后一行:
dlChart.ChartAreas[VOLTAGE_AREA].AxisY.LabelStyle.Format = "D5";
应始终指定五位数字。这在某种程度上缓解了这个问题,但它并没有消失。此外,每当我滚动图表时,程序开始在下面抛出很多表单异常:
Generate exception: 'System.FormatException' in mscorlib.dll
有人知道这个问题的解决方案吗?提前致谢。
【问题讨论】:
-
不幸的是,轴标签非常聪明,它们会修剪正常的空白。一个技巧是用 alt+255 空格左填充它们,但使用比例字体你仍然会有不同的宽度。另一个技巧是减少代码中的 ChartArea Size。为此,您需要找到一个很好的价值,即各方面要留下多少。这些值将取决于您要显示的所有内容,包括所有轴和标签以及图例。对于 3 个 CA,您可以以
ca.Position = new ElementsPosition(10, 70, 5, 23);开头 -
- 嗯第二次认为这可能与 InnerPlotAreas 的大小有关。在这里,同样的做法也适用..