三维图表

图表控件支持三维图表。 若要使用三维图表,请将相应图表区的 Area3DStyle.Enable3D 属性设置为 True。

三维属性

下图演示 ChartArea.Area3DStyle 中的属性与三维图表区的外观之间的对应关系。

除了所示的属性之外,Area3DStyle.Perspective 属性赋予图表区一个空间视角。 将此属性设置为较大的值,将使图表区显得更接近读者。

Area3DStyle.IsRightAngleAxis 属性设置为 True 时,垂直轴始终与水平轴或 Z 轴(具体取决于旋转度数)呈直角。 将此属性设置为 True 时,Area3DStyle.Perspective 属性不起作用。 反过来也一样。

对图表元素的影响

将三维效果用于图表区会在以下方面影响图表区中的图表元素行为:

  • 不能更改在支持三维效果的图表区中显示的批注深度。 定位到数据点的批注与批注定位到的数据点具有相同的深度。 在所有其他情况下,在三维图表区的前图面显示批注。

  • 批注不能定位到三维饼图或圆环图中的数据点。

  • 不能使用滚动和缩放功能。

  • 不能使用刻度分隔线。

自定义绘图和三维

与在二维图表区中不同,图表控件对于三维图表区中的序列和数据点不引发 PrePaintPostPaint 事件。 您必须使用其他事件执行自定义绘图。

由于三维图表区有 (X,Y,Z) 坐标系,必须在 GDI+ 方法使用的 (X,Y) 坐标和 (X,Y,Z) 坐标之间进行转换。 例如,若要获取三维轴上的点的绝对像素坐标,请执行以下步骤:

  1. 使用 Axis.ValueToPosition 方法从轴值获取相对 X 和 Y 坐标值。

  2. 使用 ChartArea.GetSeriesZPositionChartArea.GetSeriesDepth 方法获取相对 Z 坐标值。

  3. 使用 Point3D 类将 Point3D 对象用 X、Y 和 Z 坐标值实例化。

  4. 使用 ChartArea.TransformPoints 方法将相对 (X,Y,Z) 坐标转换为二维相对坐标。

  5. 使用 ChartGraphics.GetAbsolutePoint 方法将相对坐标转换为绝对像素坐标。

请参见

参考

System.Windows.Forms.DataVisualization.Charting

System.Web.UI.DataVisualization.Charting

其他资源

使用图表控件