由于公司的winform项目需要用到Chart图表,抽空研究了一下,特地发上来给大家做个参考,就目前而言用到的属性说明都做了注释;
主要用到Chart控件图表区域的属性有五个属性
Annotations 批注集合(我没怎么用到,但是配置的话会在图标区域出现一些可以备注的东西吧)
ChartAreas 图表区属性;主要设置图标数据的背景,比如3D或者隐藏还是显示横纵轴交叉线,分块颜色显示等
Lengends 图表图例集合 主要设置图表边说明的一些东西,这次项目没什么用到,但是觉得这个基本没啥用,有什么说明一般都另外添加的,用不到自带的属性
Series 图表序列属性,chart设置中基本大多数的设置都在这里了,用来设置数据的一下外观,数据类型(饼图,折线图,树状图等等)
Title 图表标题集合,用来设置图表的标题
使用之前要引用这个
using System.Windows.Forms.DataVisualization.Charting;
List<int> txData2 = new List<int>() { 2011, 2012, 2013, 2014, 2015, 2016 };
List<int> tyData2 = new List<int>() { 9, 6, 7, 4, 5, 4 };
List<int> txData3 = new List<int>() { 2012 };
List<int> tyData3 = new List<int>() { 7 };
Chart ct= new Chart()
//若为new一个Chart,需同时Add其Title,Series,ChartAreas等属性
//若是直接拖入控件则只需在控件属性中自己调整就好
//标题
ct.Titles.Add("我的历年合同均价(元/兆千瓦时)")
//背景
ct.ChartAreas.Add(new ChartArea() { Name = "ca1" })
ct.ChartAreas[0].Axes[0].MajorGrid.Enabled =false
ct.ChartAreas[0].Axes[1].MajorGrid.Enabled = false
ct.ChartAreas[0].Axes[0].MajorGrid.LineDashStyle = ChartDashStyle.Dash
ct.ChartAreas[0].Axes[0].MajorGrid.LineColor = Color.Gray
ct.ChartAreas[0].Axes[0].MajorTickMark.Enabled =false
ct.ChartAreas[0].Axes[1].MajorTickMark.Enabled = false
ct.ChartAreas[0].Axes[1].IsInterlaced = true
ct.ChartAreas[0].Axes[0].LabelStyle.Format = "#年"
ct.ChartAreas[0].Axes[1].MajorGrid.LineDashStyle = ChartDashStyle.Dash
ct.ChartAreas[0].Axes[1].MajorGrid.LineColor = Color.Gray
ct.ChartAreas[0].Axes[1].MajorGrid.LineWidth = 3
//图表数据区,有多个重叠则循环添加
ct.Series.Add(new Series())
// ct.Series[0].XValueType = ChartValueType.String
ct.Series[0].Label = "#VAL"
ct.Series[0].ToolTip = "#VALX年\r#VAL"
ct.Series[0].ChartArea = "ca1"
ct.Series[0].ChartType = SeriesChartType.Line
ct.Series[0].Points.DataBindXY(txData2, tyData2)
//折线段配置
ct.Series[0].Color = Color.Red
ct.Series[0].BorderWidth = 3
ct.Series[0].MarkerBorderColor =Color.Red
ct.Series[0].MarkerBorderWidth=3
ct.Series[0].MarkerColor =Color.Red
ct.Series[0].MarkerSize = 5
ct.Series[0].MarkerStyle=MarkerStyle.Circle
ct.Series.Add(new Series())
ct.Series[1].Label = "#VAL"
ct.Series[1].ToolTip = "#VALX年\r#VAL"
ct.Series[1].ChartType = SeriesChartType.Line
ct.Series[1].Points.DataBindXY(txData3, tyData3)
//折线段配置
ct.Series[1].Color = Color.Black
ct.Series[1].BorderWidth = 3
ct.Series[1].MarkerBorderColor = Color.Black
ct.Series[1].MarkerBorderWidth = 3
ct.Series[1].MarkerColor = Color.Black
ct.Series[1].MarkerSize = 5
ct.Series[1].MarkerStyle = MarkerStyle.Circle
//另外
//饼图说明设置,这用来设置饼图每一块的信息显示在什么地方
ct.Series[0]["PieLabelStyle"] = "Outside"
ct.Series[0]["PieLineColor"] = "Black"
//柱状图其他设置
ct.Series[0]["DrawingStyle"] = "Emboss"
ct.Series[0]["PointWidth"] = "0.5"
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
示例图
运行示例,我用的是折线图