本文档阐述了如何把轴 (以及所属的 图象) 划分为多个刻度范围,并通过所谓的 刻度分隔线 进行分隔。 在继续阅读本文档之前,可能需要回顾使用 轴 的基础知识。
本文档由下列小节组成。
刻度分隔线概述
刻度分隔线 是横跨轴的一个区域,用于代替轴范围的一个区间显示。 看起来像是横跨原轴的一条锯齿线 (或波浪线、直线,取决于所需的外观)。
使用刻度分隔线最普遍的原因,是当图表有无意义的间隔时 —— 当图表的系列呈现的数据存在较大的波动范围时必然出现。 例如,当系列呈现的取值序列同时包含个位数和千位数时,在默认情况下,这会导致图表不规则,原因是在这些取值水平之间波动过大。 这样,数据就不能提供任何有用的信息 —— 对于取值在此范围内的系列点、以及没有点的 leap,都不能提供有用的信息。 这样,自然需要把这些空范围替换为锯齿线 —— 刻度分隔线。
支持多条刻度分隔线,并且可以把它们添加到任意 刻度类型 的轴,而不论轴是否使用了对数刻度。
注意 |
---|
目前,还不能同时使用刻度分隔线和 滚动 功能。 滚动功能有更高的优先级。 因此,在为相同图象上的任一轴同时启用了刻度分隔线和滚动功能的情况下,刻度分隔线被禁用,而保留滚动功能。 |
添加刻度分隔线时,它们的范围是否交叉、或者是否超出 轴的可视范围 是无关紧要的。 XtraCharts 将自动合并交叉的刻度分隔线,并且调整轴的范围。 启用刻度分隔线时,要切记必须处理轴刻度和范围,因此轴的 网格线、刻度线和交错背景 以及 轴标签 都会受到影响。
通过 XtraCharts,可以使用 自动 或 人工 的刻度分隔线,或者同时使用。 在本文档下面的对应小节中,重点说明了这些方式。
自动刻度分隔线
可以通过 Axis.AutoScaleBreaks 属性,使 XtraCharts 自动把刻度分隔线插入到轴中。 要在设计时刻完成此任务,则在 属性 窗口中,展开 Axis.AutoScaleBreaks 属性,并把 AutoScaleBreaks.Enabled 属性设置为 true。
然后,当图表数据促成 (数据的较大值和较小值相差很大) 使用刻度分隔线时,就自动创建刻度分隔线。
可以通过 AutoScaleBreaks.MaxCount 属性来限制刻度分隔线的最大数目,最小的取值是 1。
注意,自动计算的刻度分隔线和人工添加到 ScaleBreakCollection 中的刻度分隔线可以共存。
要了解更多信息,请参阅 如何: 启用轴的自动刻度分隔线。
人工插入刻度分隔线
除了自动刻度分隔线以外,还可以人工把刻度分隔线指派到轴。
刻度分隔线是通过 ScaleBreak 类的实例表示的,并且位于轴的 ScaleBreakCollection 集合中。
要在设计时刻访问此集合,则单击轴以选中它,并在 属性 窗口中,找到 Axis.ScaleBreaks 属性。 单击它的省略号按钮来调用 Scale Break Collection Editor(刻度分隔线集合编辑器)。
在把刻度分隔线添加到集合中之后,还要指定刻度分隔线表示的范围。 通过两个属性来确定范围界限: ScaleBreak.Edge1 和 ScaleBreak.Edge2 属性。
应该以适合于 轴的刻度类型 的度量单位来指定这些属性的取值。
注意 |
---|
ScaleBreak.Edge1 属性值是否小于或大于 ScaleBreak.Edge2 属性值是无关紧要的。 唯一重要的是它们的取值必须不同,因为如果这两个属性值相等,那么刻度分隔线就被视同为 隐藏。 |
要为刻度分隔线指定自定义名称,则使用 ChartElementNamed.Name 属性。
如果启用了 ScaleBreak.Visible 属性,那么就可以看到横穿轴的刻度分隔线,并且就可以关闭对话框了。
更多相关信息,请参阅 如何: 人工把刻度分隔线插入到轴中 或 如何: 人工把刻度分隔线插入到轴中 (运行时刻示例)。
定制刻度分隔线的外观
要指定自动和人工刻度分隔线的 整体 外观,则使用 Axis.ScaleBreakOptions 属性。
此属性用于访问下列选项:
- ScaleBreakOptions.Color 属性,确定刻度分隔线边缘的颜色;
- ScaleBreakOptions.SizeInPixels 属性,确定刻度分隔线的以像素为单位的宽度;
- ScaleBreakOptions.Style 属性,允许选择刻度分隔线的边缘是直线、波浪线、还是锯齿线。