本文档详细描述了 三维 XY-图象 类型的特性。 列出了与这种图象类型相关联的系列视图类型,展示了在设计时刻和运行时刻如何访问特殊选项,并且简要说明了这些选项。 在阅读这些信息之前,可能需要回顾在 XtraCharts 中使用 图象 的基本概念。
本文档由下列小节组成。
相关联的系列视图类型
除了大量的 二维图表类型 之外,使用 XtraCharts,还可以以吸引眼球且高分辨率的三维样式来构建大部分图表。 此外,在设计时刻和运行时刻,智能旋转功能允许通过鼠标指针来调整图表的三维位置。 在下面的插图中显示了一个典型的三维 XY-图象。
通过 三维 XY-图象 类型,可以使用下列视图类型的系列。
- 三维面积图;
- 三维百分比堆积面积图;
- 三维百分比堆积条形图;
- 三维百分比堆积样条面积图;
- 三维折线图;
- 三维 Manhattan 条形图;
- 三维簇状条形图;
- 簇状百分比堆积条形图;
- 簇状堆积条形图;
- 三维样条图;
- 三维样条面积图;
- 三维堆积面积图;
- 三维堆积条形图;
- 三维堆积样条面积图;
- 三维阶梯线图。
三维图象类型使用了完全不同的图形引擎,以便于满足特定的需求。 出于这一原因,一部分可用的功能是独特的 (与类似的二维图象比较而言),并且只支持这些图象类型。 另外,不可能在相同的图象中同时绘制二维和三维系列。
关于这种图象类型可用的选项的详细说明,请参阅本文档的下列小节: 特殊选项。
本文档的下一小节说明了如何访问三维 XY-图象类型的对象。
访问图象
要在设计时刻访问三维 XY-图象的选项,则单击图表来选中它。 然后,在 属性 窗口中展开 ChartControl.Diagram 属性。
在运行时刻,应该把 Diagram 对象的实例转换为 XYDiagram3D 类型。
C# | 复制代码 |
---|---|
// Create a new ChartControl instance. ChartControl chart = new ChartControl(); // Create a series of a compatible view type, // and add it to the chart's collection, // so the diagram object shall not to be equal to null. Series series1 = new Series("Line 3D Series 1", ViewType.Line3D); chart.Series.Add(series1); // Create a diagram, and cast it to the XYDiagram3D type. XYDiagram3D diagram = (XYDiagram3D)chart.Diagram; // Access the diagram's options. diagram.AxisX.Interlaced = true; diagram.PlaneDepthFixed = 20; |
Visual Basic | 复制代码 |
---|---|
' Create a new ChartControl instance. Dim chart As New ChartControl() ' Create a series of a compatible view type, ' and add it to the chart's collection, ' so the diagram object shall not to be equal to Nothing. Dim series1 As New Series("Line 3D Series 1", ViewType.Line3D) chart.Series.Add(series1) ' Create a diagram, and cast it to the XYDiagram3D type. Dim diagram As XYDiagram3D = CType(chart.Diagram, XYDiagram3D) ' Access the diagram's options. diagram.AxisX.Interlaced = True diagram.PlaneDepthFixed = 20 |
特殊选项
XYDiagram3D.AxisX 和 XYDiagram3D.AxisY 属性提供了与 二维 XY-图象 类型的对应属性类似的功能。 更多信息,请参阅 轴概述。
XYDiagram3D.BackColor、XYDiagram3D.BackImage 和 XYDiagram3D.FillStyle 属性,确定图象的背景。 注意,只有二维 XY-图象支持多个 窗格。 因此,要指定三维图象的背景,就不需要访问它的窗格。
XYDiagram3D.PlaneDepthFixed 属性,以图象像素为单位来确定坐标平面的深度 (厚度)。
注意 |
---|
图象像素是一种专门用于三维图象的度量单位,以便于满足独特的需求。 |
要指定三维图象上系列之间的距离,则可以设置为固定间距 (通过 XYDiagram3D.SeriesDistanceFixed 属性),这样,当调整图象的大小时,间距保持不变。 或者,可以指定与图象尺寸相关的间距 (通过 XYDiagram3D.SeriesDistance 属性)。 在这种情况下,当调整图象的大小时,按照轴的单位和系列之间的间隙来计算间距。
另外,还可以通过 XYDiagram3D.SeriesIndentFixed 属性,以图象像素为单位来指定在最后一个系列和参数坐标平面之间的距离 (前、后距离)。
最后,在下面列出了所有三维图象类型公有的属性。 要获得更详细的信息,请参阅这些属性的说明。
缩放和滚动
Diagram3D.HorizontalScrollPercent 和 Diagram3D.VerticalScrollPercent 属性,确定从图象中心位置 (通过 Diagram3D.DefaultScrollPercent 常量指定) 移动的距离,此距离按照图象宽度的百分比进行计算。 通过正值或负值来指定滚动方向。 当这些属性值太大时,会导致系列超出图象的尺寸。 在这种情况下,可以需要允许最终用户人工滚动图象,以便于查看整个系列。 要这样做,则启用 Diagram3D.RuntimeScrolling 属性。
Diagram3D.ZoomPercent 属性,确定图表的放大倍数等级 (百分比)。 它的取值介于 1;500 之间。 因此,所允许的最大值是图象的 5 倍放大倍数。 要允许最终用户放大和缩小图象,则启用 Diagram3D.RuntimeZooming 属性。
更多信息,请参阅 缩放和滚动 (三维图表)。
透视
在透视投影中,与目标平行的线条向一点汇集,就如同在投影面上它们移向理论上的地平线那样。 平行线向一点汇集的比例被称为 透视角。 这个角度是由三维图象对象中的虚取景器的距离确定的。 要启用或禁用三维透视,则使用 Diagram3D.PerspectiveEnabled 属性。 当它被设置为 true,就可以使用 Diagram3D.PerspectiveAngle 属性来指定所需的角度。 把 Diagram3D.PerspectiveAngle 属性设置为 0 将会禁用透视功能。
旋转
要允许最终用户旋转图象,则启用 Diagram3D.RuntimeRotation 属性。
有多种可用的旋转类型; 可以通过 Diagram3D.RotationType 属性来设置所需的旋转类型。
如果为此属性启用 RotationType.UseMouseStandard 和 RotationType.UseMouseAdvanced 设置,则可以使用 Ctrl+鼠标指针 (在设计时刻) 或只使用 鼠标指针 (在运行时刻) 来旋转三维图表。 这些设置之间的区别在于执行旋转的算法不同。
如果启用 RotationType.UseAngles 设置,则三维图表围绕 X、Y 和 Z 轴 旋转,分别由 Diagram3D.RotationAngleX、Diagram3D.RotationAngleY 和 Diagram3D.RotationAngleZ 属性来指定围绕各个轴的旋转角度,并且由 Diagram3D.RotationOrder 属性指定旋转顺序。
更多信息,请参阅 旋转 (三维图表)。
注意 |
---|
对于 Web 图表,在 中度信任 权限级别下禁止使用三维图表。 要学习更多相关内容,请参阅 中度信任支持。 |