Chart控件五大核心“ 图表属性 ”
Series:图表序列->图表集合,就是最终看到的饼图、柱状图、线图、点图等构成的合
1.ChartArea:图表所属的绘图区域名称
2.ChartType:图表类型(柱形、饼形、线形、点形、折线图等,有多达几十种之多)
3.IsValueShownAsLabel:是否显示数据点标签,如果为true,在图表中显示每一个数据值
4.Label:数据点标签文本
5.LabelFormat:数据点标签文本格式
6.LabelAngle:标签字体角度
7.Legend:当前数据系列(图表)使用的图例名称
8.Name:数据系列的名称
9.Palette:数据系列(图表)外观定义
10.Points:数据点集合,不添加这个,窗体在初使化后什么都没有
11.XValueMember:横坐标绑定的数据源
12.XValueType:横坐标数字的类型,默认为auto,即根据传入的数据自动规定类型
13.YValueMembers:纵坐标绑定的数据源
14.YValueType:纵坐标数字的类型默认为auto,即根据传入的数据自动规定类型
15.XAxisType:只是所要使用的坐标轴是主坐标还是副坐标,它有两个取值,Primary和Sencondary
16.YAxisType:
17. 映射区(TooTip):鼠标放在数据点上出现的小提示,建议用代码控制;
(4)Series属性的“ 数据绑定 ”方式。——上面的Points是“ 核心 ”
(1)Points集合
因为points是集合,故而具有集合的相关性质,Points是一个DataPointCollection类型的集合属性。可以查看 DataPointCollection的定义来查看相关的方法。
要给每一个Series绑定数据,主要用到以下三个方法:
public void DataBind(IEnumerable dataSource, string xField, string yFields, string otherFields);
public void DataBindXY(IEnumerable xValue, params IEnumerable[] yValues);
public void DataBindXY(IEnumerable xValue, string xField, IEnumerable yValue, string yFields);
public void DataBindY(IEnumerable yValue, string yFields);
如下所示:
chart1.Series["Series1"].Points.DataBindXY(x, y); 即绑定了一组 X,Y到一个Series上面去了。
Titles标题合集
Text:显示标题
1、ChartAreas属性
ChartAreas属性的定义如下:
public ChartAreaCollection ChartAreas { get; } 由此可见,他是一个返回ChartAreaCollection的只读属性。
(1)绘图区域的添加——三种方法
在拖动一个Chart控件到窗体中去的时候,会默认有一个Name=“ChartArea1"的对象,它是ChartArea类的一个实例。
a、直接通过操作属性:直接点击添加,会依次按照ChartArea2这样添加下去,也可以修改名字。
b、chart1.ChartAreas.Add("ChartArea2");当然可以起一个其它的名字
c、ChartArea area2=new ChartArea(“ChartArea2”);
chart1.ChartAreas.Add(area2);
第三种方法展现了创建绘图区域的本质,即添加一个ChartArea类型的对象到ChartAreas属性里面去。
(2)绘图区对象的获取方法
每一个绘图区本质上都是ChartArea的一个实例对象,然后将该对象Add到了chart1对象的ChartAreas集合属性,故而有两种获取方法。
a、通过绘图区名字获取:chart1.ChartAreas["ChartArea1"].属性或方法。
b、通过下标索引获取: chart1.ChartAreas[0].属性或方法。
之所以有这两种方法,是因为ChartAreas属性的本质是集合。
(3)绘图区域常见的一些属性
下面的这些属性均是定义在 ChartArea 类型中的,故而是绘图区的属性
AlignmentOrientation:图表区对齐方向,定义两个绘图区域间的对齐方式,默认为Vertical。
AlignmentStyle:图表区对齐类型,定义图表间用以对其的元素。
AlignWithChartArea:参照对齐的绘图区名称。
InnerPlotPosition:图表在绘图区内的位置属性。
Position:绘图区位置属性,选项如同InnerPlotPosition。
Name:绘图区名称。
Axes:坐标轴集合-非常重要的部分,可分别设置X轴(X axis),Y轴(Y axis),第二X轴(SecnondaryX axis)和第二Y轴(Secnondary Y axis),常用的属性包括:
a.ArrowStyle设置坐标轴是否有箭头
b.Interval:轴刻度间隔大小
c.IntervalOffset:轴刻度偏移量大小
d.LableStyle 设置坐标轴的文字大小等
e.MajorGrid:主要辅助线
f.MajorTickMark:主要刻度线
g.MinorTickMark:次要刻度线
h.MinorGrid:次要辅助线
i.Title:坐标轴标题
j.TitleAlignment:坐标轴标题对齐方式
Maximum:刻度的最大值,网格刻度的最大值
Minimum:刻度的最小值
Interval:轴间隔大小.比如value=5 那么显示的值就是0,5,10,15……
this.chart1.ChartAreas[0].AxisX.IsMarginVisible = false;//坐标从0开始
注意:Axes属性又是一个“ 集合属性”,这也是为什么是Asex,而不是Axis,因为Asex是Axis的复数形式。Asex集合中放置的元素是Axis类型的实例,我们可以通过属性设计器去完成;默认情况下,每一个绘图区会有两组坐标系,即X、Y、第二X、第二Y。要访问某一个
以下是图表介绍的视频
C#Chart控件画折线图的使用_哔哩哔哩_bilibili