webChart使用-折线图
本篇文章将演示如何使用 WebChart 制作折线图。并通过示例介绍数据对象一些相关属性以及 ChartArea 的 Axis 的相关属性设置,并演示使用 WebChart 做交互式的设计。
注:版本 ComponentOne.Studio.Enterprise.2006.v2
1) 获取 WebChart 的第一个图标,并设置其图表类型为折线图
C1WebChart1.ChartGroups[ 0 ].ChartType = Chart2DTypeEnum.XYPlot;
获取数据。这里可以根据自己的业务需求,或自动生成或查询数据库,返回一个 DataSet 对象。
DataView dv = new DataView(ds.Tables[ " sanguo " ]);
PointF[] data = (PointF[])Array.CreateInstance( typeof (PointF), dv.Count);
for (i = 0 ; i < data.Length; i ++ )
float y = float .Parse(dv[i][ " value " ].ToString());
将数据封装在 PointF 类型的对象数组中。这里可以使用任何方式封装数据。
C1WebChart1.ChartGroups[ 0 ].ChartData.SeriesList.Clear();
ChartDataSeries series = C1WebChart1.ChartGroups[ 0 ].ChartData.SeriesList.AddNewSeries();
WebChart 默认会有 4 个数据序列,为了不让其他序列影响输出效果,清除序列集合中的所有序列,并且创建一个新的序列。
series.PointData.CopyDataIn(data);
将数据添加至新建的数据序列中。这里使用 PointData 属性,同时为 X 、 Y 坐标付值。
到这里,我们便可以运行程序,看到一个有我们的数据生成的一个默认样式的折线图。下面来介绍使用 ChartDataSeries 对象设置图形的样式。
二、使用 ChartDataSeries 对象设置折线图样式
关于 ChartDataSeries 对象,之前已作了简单介绍,这里直接以代码介绍其部分属性。
series.FitType = FitTypeEnum.Spline;
series.LineStyle.Color = Color.Red;
Pattern - 设置折线的类型 (实心直线、点线等),其值为 LinePatternEnum 枚举类型。
series.SymbolStyle.Shape = SymbolShapeEnum.InvertedTri;
series.SymbolStyle.Color = Color.Blue;
还可以通过 SymbolStyle 设置符号的大小,符号边线的颜色及厚度。可以自己尝试。
Axis ax = C1WebChart1.ChartArea.AxisX;
ax.AnnoMethod = AnnotationMethodEnum.ValueLabels;
设置坐标轴刻度标签显示方式,这里使用 ValueLabels ,有用户来制定标签内容。默认为 Values 模式,有系统自动标注标签内容。
for (i = 0 ; i < data.Length; i ++ )
ax.ValueLabels.Add(i, ( string )drv[ " name " ]);
ax.ValueLabels.Add 的第一个参数为图表数据的 x 值,第二个参数为对应显示的标签文本。
ax.AnnotationRotation = - 60 ;
对于标签内容还可以使用属性 AnnoFormatString 来设置内容的格式。
ax.Rotation = RotationEnum.Rotate90;
对于坐标轴标题,还可以设置它的 对齐方式,使用属性 Alignment 。
对于刻度值的也有类似属性: UnitMajor 、 UnitMinor 设置主、副刻度的单位长度。以及对应的 auto 属性等。
在我们使用 .NET 开发环境中,会有智能感知的相关提示,对于对象属性的使用会简单得多。这里只介绍了主要的属性,其他属性可根据需要自行尝试。
C1WebChart1.ImageAreas.GetByName( " ChartData " ).Tooltip = " X={#XVAL}, Y={#YVAL:c} " ;
为折线上的数据点增加鼠标提示。(鼠标移至数据点的符号上,会提示你所设置文本)
C1WebChart1.Footer.Text = " Web Chart Test! " ;
C1WebChart1.Footer.Visible = true ;
这里设置图标下标题,并让图表 Footer 区域显示在图表中。
对于 C1WebChart 的相关属性比较简单,不再一一演示。
附录:
效果图

浙公网安备 33010602011771号