C# WinForm开发系列之c# 通过.net自带的chart控件绘制饼图,柱形图和折线图的基础使用和扩展

WinForm】【C#】记录学习使用Chart控件制作折线图过程 阅读详情

一.需要实现的目标是:

1.将数据绑定到pie的后台数据中,自动生成饼图。

2.生成的饼图有详细文字的说明。


1.设置chart1的属性Legends中默认的Legend1的Enable为false;

如图1所示:

图1
2.设置Series的ChartType为Pie,如图2所示:

图2

图3
3.后台绑定数据
      List<string> xData = new List<string>() { "A", "B", "C", "D" };
            List<int> yData = new List<int>() { 10, 20, 30, 40 };
            chart1.Series[0]["PieLabelStyle"] = "Outside";//将文字移到外侧
            chart1.Series[0]["PieLineColor"] = "Black";//绘制黑色的连线。
            chart1.Series[0].Points.DataBindXY(xData, yData);

4.后台代码主要实现了数据绑定和将指示的文字移到饼图的外侧。如图4所示:

图4

折线图和柱形图的生成和饼图相同。

二.chart画饼图,折线图,柱形图的扩展。

1.使用chart控件创建,跟上面相同;

2.进行关于柱形图样式的数据数据,

代码展示:

 //画图柱形图的条数决定是由数据源也就Series决定。Series是对象,动态创建即可。
        private void Form2_Load(object sender, EventArgs e)
        {
            //画图柱形图的条数决定是由数据源也就Series决定。Series是对象,动态创建即可。
            Series s1 = new Series();
            Series s2 = new Series();
            Series s3 = new Series();

    //随机
            Random r = new Random();
            for (int i = 1; i < 13; i++)
            {
                //绑定数据
                s1.Points.AddXY(i, r.Next(20, 30));
                s2.Points.AddXY(i, r.Next(10, 30));
                s3.Points.AddXY(i, r.Next(20, 30));
            }
            //指定柱形条的颜色
            s1.Color = Color.Green;
            s2.Color = Color.Red;
            s3.Color = Color.Black;
            //加入到chart1中
            chart1.Series.Add(s1);
            chart1.Series.Add(s2);
            chart1.Series.Add(s3);
        }

3.柱形图效果如图5所示:


图5


4.C# chart绑定数据的几种方式

(1)、数组, List 等简单Collection类型的方式

Series s1= new Series();
然后绑定数据就可以了
chart1.Series["s1"].Points.DataBindXY(Hdop, Vdop);
(2)DataTable方式

  Series dataTable3Series = new Series("dataTable3");

  dataTable3Series.Points.DataBind(dataTable3.AsEnumerable(), "日期""日发展""");

dataTable3Series.XValueType = ChartValueType.DateTime;//设置X轴类型为时间
dataTable3Series.ChartType = SeriesChartType.Line;  //设置Y轴为折线
chart1.Series.Add(dataTable3Series);//加入你的chart1

三.chart控件画图的一些关键点

1.如何将折线图的各个数据点凸显出来

代码如下:

  private void Form3_Load(object sender, EventArgs e)
        {
            List<string> xData = new List<string>() { "A", "B", "C", "D" };
            List<int> yData = new List<int>() { 10, 20, 30, 40 };
            //线条颜色
            chart1.Series[0].Color = Color.Green;
            //线条粗细
            chart1.Series[0].BorderWidth = 3;
            //标记点边框颜色      
            chart1.Series[0].MarkerBorderColor = Color.Black;
            //标记点边框大小
            chart1.Series[0].MarkerBorderWidth = 3;
            //标记点中心颜色
            chart1.Series[0].MarkerColor = Color.Red;
            //标记点大小
            chart1.Series[0].MarkerSize = 8;
            //标记点类型     
            chart1.Series[0].MarkerStyle = MarkerStyle.Circle;
            //将文字移到外侧
            chart1.Series[0]["PieLabelStyle"] = "Outside";
            //绘制黑色的连线
            chart1.Series[0]["PieLineColor"] = "Black";
            chart1.Series[0].Points.DataBindXY(xData, yData);
        }

效果图如图6所示:


图6

2.  如何去掉柱形图纵向线条

代码如下:

  private void Form2_Load(object sender, EventArgs e)
        {
            //画图柱形图的条数决定是由数据源也就Series决定。Series是对象,动态创建即可。
            Series s1 = new Series();
            Series s2 = new Series();
            Series s3 = new Series();
            Random r = new Random();
            for (int i = 1; i < 13; i++)
            {
                //绑定数据
                s1.Points.AddXY(i, r.Next(20, 30));
                s2.Points.AddXY(i, r.Next(10, 30));
                s3.Points.AddXY(i, r.Next(20, 30));
            }
            //指定柱形条的颜色
            s1.Color = Color.Green;
            s2.Color = Color.Red;
            s3.Color = Color.Black; 
            //加入到chart1中
            //X轴上网格
            chart1.ChartAreas[0].Axes[0].MajorGrid.Enabled = false;
            //y轴上网格
            //ct.ChartAreas[0].Axes[1].MajorGrid.Enabled = false;      
            chart1.Series.Add(s1);
            chart1.Series.Add(s2);
            chart1.Series.Add(s3);
        }

效果如图7所示:


图7

3.  如何使用chart控件画圆环图

操作与饼形图,折线图等相似,只是需要将chartType设置为Doughnut;

如图8所示:


图8

在这里可以设置关于圆环的内外百分比,如图9所示:


图9

效果图如图10所示:


图10

注意:代码设置圆环大小代码如下:

 //DoughnutRadius用来设置用作圆环图大小的半径百分比
 chart1.Series["data"].CustomProperties = "DoughnutRadius = 20";

C# 实时折线图,波形 此Demo是采用VS自带Chart控件,制作实时动态显示的折线图波形。本文仅供学习分享使用,如有不足之处,还请指正。 涉及知识点: Chart 控件,功能强大,可以绘制柱状折线图,波形,大大简化了对开发与定制。     Chart控件的相关概念: ChartArea,表示表区域,一个Chart可以绘制多个ChartArea,重叠在一起。 ... 阅读详情

相关推荐

构建优秀的C#控件:PieChart指南

本文还有配套的精品资源,点击获取 简介:本文介绍了C#的创建优化方法。讨论了如何使用.NET内置库(如Windows FormsWPF Chart控件)及第三方库(如LiveChartsOxyPlot)来实现高质量的。重点强调了数据绑定、数据标签、颜色样式、交互性、动画效果以及性能优化等关键点,以帮助开发者提高软件用户体验。 1. C#...

weixin_36289742的博客 2315

C# 生成表(/柱形图)的控件及实例

摘要:C#源码,菜单窗体,,柱形图,表  一个demo,很简单实用,拿来与大家分享,C# 生成表,生成常用的圆/柱形图控件及实例,运行截如上所示,是不是很棒。

C#chart折线图

C#chart画的折线图表,可以使用

C# chart画折线

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录版本一(DataGridView Chart)1.小目标2.过程实现3.结果二、版本二(Combobox Chart)1.小目标2.过程实现3.浅贴一下效果总结 版本一(DataGridView Chart) 1.小目标 控件绑定Sql Sever 数据库 DataGridView列出数据,Chart画折线 2.过程实现 chart的初始设置(个人习惯) 列关掉(属性>Legends&g.

barelank的博客 1万+

C# Winform Chart控件用法4之

1、拖chart控件在新建的窗口,命名chart1 2、源代码

qq_57798018的博客 8973

c# chart 各个属性_C# WinForm开发系列c# 通过.net自带chart控件绘制,柱形图折线图基础使用扩展...

.需要实现的目标是:1.将数据绑定到pie的后台数据中,自动生成。2.生成的有详细文字的说明。1.设置chart1的属性Legends中默认的Legend1的Enable为false;如1所示:12.设置SeriesChartType为Pie,如2所示:233.后台绑定数据List xData = new List() { "A", "B", "C", "D" };List ...

weixin_36243739的博客 1224

C# WinForm开发系列c# 通过.net自带chart控件绘制,柱形图折线图基础使用扩展...

.需要实现的目标是: 1.将数据绑定到pie的后台数据中,自动生成。 2.生成的有详细文字的说明。 1.设置chart1的属性Legends中默认的Legend1的Enable为false; 如1所示: 1 2.设置SeriesChartType为Pie,如2所示: 2 3 3.后台绑定数据 List<str...

weixin_30314793的博客 642

视频教程-C#表技术-C#

C#表技术 二十多年的企业管理软件开发经历,熟知管理软件的整个开发流程,熟...

weixin_30805025的博客 195

在Asp.net页面中实现数据

ASP.NET之所以能够在客户端浏览器中形成各种数据片,是因为在ASP.NET中提供了绘功能,具体的作法是先在服务器端创建一个Bitmap实例,然后利用ASP.NET中提供的绘功能,按照要生成的片的模样,进行绘制,最后把绘制好的实例以数据流的方式传送到客户端的浏览器上,并形成片显示出来。本文要介绍的在ASP.NET页面中实现数据采用的基本也是这种方法。有时称为"Pie",本文要实现的数据模样具体如01所示: 01...

ba_wang_mao的专栏 1239

(七十)c#Winform自定义控件-

前提 入行已经7,8年了,一直想做一套漂亮点的自定义控件,于是就有了本系列文章。 GitHub:https://github.com/kwwwvagaa/NetWinformControl 码云:https://gitee.com/kwwwvagaa/net_winform_custom_control.git 如果觉得写的还行,请点个 star 支持一下吧 欢迎前来交流探讨: 企鹅群5...

冰封一夏 1870

C# winform chart 使用布局

第一步 添加chart控件一些属性的设置点Legends属性,修改外观属性 点series属性,修改ChartType类型 点击Tiles,属性中的Text就是标题文本,外观中还可以修改标题的大小

uiopmn1的博客 4960

C# Winfrom Chart 控件 柱状折线图

新建一个.NET Framework 类型的 Winfrom 项目,在数据里面找到 Chart 控件,拖入到界面中如下: 此时,默认的有一个表的样式,实际运行却什么都没有 修改表样式在Series这里,点击集合后面到三个点 这里可以修改标记的名字这里修改表到样式 绑定数据此时表还没有任何数据,可以用绑定方式添加数据,如下 运行后如下..................................................................................

熊思雨的博客 3万+

C# 自定义控件-Winform

这里我演示的是Winform的自定义控件。(创建一个文件夹CusContorl,在这个文件夹里创建自定义控件,文件夹名字自己自定义即可。(2)在自己的窗口代码里调用自定义控件,处理好XY轴数据,直接传值给 pieChart1.SetPieXY(X,Y).解决方法:自己代码先运行一下,关闭程序,此时在工具箱可以看到自己的自定义控件。(1)在工具箱有自己的创建的自定义控件,直接拖转到窗口界面就可以了。2.使用自带echart控件,拖到自定义控件里,进行自定义。3.设置表类型-。5.设置外边距大小。

peri404的博客 2287

C# | 使用Chart动态展示实时折线图数据

实时折线图是展示数据变化趋势的有效方式,可以用于监控系统性能、物理实验、股票走势等多个领域。在C#中,我们可以使用Chart控件来实现实时折线图的展示,其动态性可交互性可以帮助用户更好地理解数据。本文将介绍如何使用Chart控件展示实时折线图数据,希望能帮助读者快速掌握这个技能,应用于实际场景中。

猿长大人 9141

C# GDI 绘制

i++)//计算百分率。

csdn9990的博客 599

关于微软C#中的CHART控件的简单使用

http://www.cnblogs.com/winshe/articles/6604406.html 最近公司项目要用到Chart控件,这是一个比较老的东西了,目前网络上似乎已经不太流行这个控件,但是只要配置了相关的属性,效果还是可以的。前前后后摸索了好久,接下来谈谈这个件控件最重要的几个属性。 1.ChartAreas属性 ChartAreas属性指绘区,一个控件可以有多个绘区,比如我...

不是我的博客 7425
上一篇: C# WinForm开发系列之DataGridView部分属性总结和图片资源的引用方式
下一篇: C# 利用微软提供的画图类画图(如折线图)
想念-忘记了
博客等级 码龄9年 64粉丝 61原创
评论 4
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值