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