基本介绍:chart(图表)

功能:主要用来绘制折线图,柱状图与饼状图,也可达到动态效果(例如作示波器);

需要说明

一个chart可以包含多个chartArea。 chartArea是具体的坐标区域。 每一个chartArea主要包含X轴,Y轴,副X轴(上方),副Y轴(右方),绑定的线条,绑定的图例。  数据列可以有许多,只要将线条绑定到chartArea就可以在对应的chartArea显示。

关于chart类的官方文档:

https://msdn.microsoft.com/zh-cn/library/system.windows.forms.datavisualization.charting.chart(v=vs.110).aspx#%E5%B1%9E%E6%80%A7

chart中所有数据储存在series类中,对数据的操作也集成在series类下。

具体请参照官方series类说明:

https://msdn.microsoft.com/zh-cn/library/system.windows.forms.datavisualization.charting.series(v=vs.100).aspx

chart的使用:

chart控件的基本使用包括:

1.设置图表基本属性,包括背景色,样式等 (必要)

2.设置图表标题及其格式

3.设置X轴Y轴相关属性

4.设置图例相关属性

5.数据列设置(必要)

6.添加数据列,并设置绘图类型(必要)

一个实例:

#region 设置图表的属性

//图表的背景色

chart1.BackColor = Color.FromArgb(211, 223, 240);

//图表背景色的渐变方式

chart1.BackGradientStyle = GradientStyle.None;

//图表的边框颜色、

chart1.BorderlineColor = Color.FromArgb(26, 59, 105);

//图表的边框线条样式

chart1.BorderlineDashStyle = ChartDashStyle.Solid;

//图表边框线条的宽度

chart1.BorderlineWidth = 2;

//图表边框的皮肤

chart1.BorderSkin.SkinStyle = BorderSkinStyle.None;

#endregion

#region 设置图表的Title

Title title = newTitle();

//标题内容

title.Text = "BER";

//标题的字体

title.Font = new System.Drawing.Font("Microsoft Sans Serif", 12, FontStyle.Regular);

//标题字体颜色

//title.ForeColor = Color.FromArgb(26, 59, 105);

//标题阴影颜色

//title.ShadowColor = Color.FromArgb(32, 0, 0, 0);

//标题阴影偏移量

//title.ShadowOffset = 3;

chart1.Titles.Add(title);

#endregion

#region 设置图表区属性

//图表区的名字

ChartArea chartArea =new ChartArea("Default");

//背景色

chartArea.BackColor = Color.White;//Color.FromArgb(64, 165, 191, 228);

//背景渐变方式

chartArea.BackGradientStyle = GradientStyle.None;

//渐变和阴影的辅助背景色

chartArea.BackSecondaryColor = Color.White;

//边框颜色

chartArea.BorderColor = Color.Blue;

//边框线条宽度

chartArea.BorderWidth = 2;

//边框线条样式

chartArea.BorderDashStyle = ChartDashStyle.Solid;

//阴影颜色

//chartArea.ShadowColor = Color.Transparent;

//设置X轴和Y轴线条的颜色和宽度

chartArea.AxisX.LineColor = Color.FromArgb(64, 64, 64, 64);

chartArea.AxisX.LineWidth = 1;

chartArea.AxisY.LineColor = Color.FromArgb(64, 64, 64, 64);

chartArea.AxisY.LineWidth = 1;

//设置X轴和Y轴的标题

//chartArea.AxisX.Title = "time";

//chartArea.AxisY.Title = "count";

//chartArea.AxisX.TitleFont = new System.Drawing.Font("Microsoft Sans Serif", 10, FontStyle.Regular);

//chartArea.AxisY.TitleFont = new System.Drawing.Font("Microsoft Sans Serif", 10, FontStyle.Regular);

//设置图表区网格横纵线条的颜色和宽度

chartArea.AxisX.MajorGrid.LineColor = Color.FromArgb(64, 64, 64, 64);

chartArea.AxisX.MajorGrid.LineWidth = 1;

chartArea.AxisY.MajorGrid.LineColor = Color.FromArgb(64, 64, 64, 64);

chartArea.AxisY.MajorGrid.LineWidth = 1;

chart1.ChartAreas.Add(chartArea);

#endregion

#region 图例及图例的位置

Legend legend = newLegend();

legend.Alignment = StringAlignment.Center;

legend.Docking = Docking.Bottom;

legend.BackColor = Color.Transparent;

this.chart1.Legends.Add(legend);

#endregion

数据点设置:

Series series = new Series(string.Format("Ch{0}", i + 1));

//Series的类型

series.ChartType =SeriesChartType.Line;

//Series的边框颜色

series.BorderColor =Color.FromArgb(180, 26, 59, 105);

//线条宽度

series.BorderWidth = 3;

//线条阴影颜色

//series.ShadowColor= Color.Black;

//阴影宽度

//series.ShadowOffset= 2;

//是否显示数据说明

series.IsVisibleInLegend= true;

//线条上数据点上是否有数据显示

series.IsValueShownAsLabel = false;

//线条上的数据点标志类型

series.MarkerStyle =MarkerStyle.None;

//线条数据点的大小

//series.MarkerSize= 8;

绘制图表/折线:

//添加数据点

this.chart1.Series.Add(series);

//使用折线图

this.chart1.Series.ChartType = SeriesChartType.Line;

C# chart控件基础使用的更多相关文章

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

    一.需要实现的目标是: 1.将数据绑定到pie的后台数据中,自动生成饼图. 2.生成的饼图有详细文字的说明. 1.设置chart1的属性Legends中默认的Legend1的Enable为false: ...

  2. ASP.NET中的chart控件绑定SQL Server数据库

    网上很多的chart控件的实例都没有绑定数据库,经过一番摸索后,终于实现了chart控件绑定数据库. 首先,在Visual Studio中建立一个网站,新建一个WebForm项目,名称为ChartTe ...

  3. C# Chart控件,chart、Series、ChartArea曲线图绘制的重要属性

    http://blog.sina.com.cn/s/blog_621e24e20101cp64.html 为避免耽误不喜欢这种曲线图效果的亲们的时间,先看一下小DEMO效果图: 先简单说一下,从图中可 ...

  4. javascript曲线图和面积图Line & Area chart控件功能及下载

    Line & Area chart 控件是一款新型的.可用性极强的曲线图和面积图产品.一个您网站的访问者可以放大他感兴趣的一段区域,打开和关闭数值气球,并可显示和隐藏图表.您能创建简单.堆积. ...

  5. Chart控件,把Y轴设置成百分比

    这次所有属性设置都用代码(就当整理便于以后查询). 在窗体放置一个Chart控件,未做任何设置:然后编写代码: //设置 chart2.Legends[ ].Enabled = false;//不显示 ...

  6. winform Chart控件 获取鼠标处坐标值方法

    Chart控件本身功能强大,应用广泛,因此其属性.方法也很多.此处介绍在很多应用中需要查看鼠标位置处坐标值的一些方法 1,调用Chart事件  GetToolTip 利用ToolTipEventArg ...

  7. C# chart控件绘制曲线

    在.NET中以前经常用GDI去绘制,虽然效果也不错,自从.NET 4.0开始,专门为绘制图表而生的Chart控件出现了,有了它,就可以轻松的绘制你所需要的曲线图.柱状图什么的了. using Syst ...

  8. Chart控件的多种使用方法

    花了近一周时间专门研究.net 3.5平台提供的Chart控件的使用方法,感觉该控件的功能很强大,做出的图表效果也很美观,使用方法也并不复杂.如今先讲下Chart控件的部署及一些基本使用方法. 一.安 ...

  9. 使用.net 的Chart控件绘制曲线图

    在进行软件开发过程中我们可能会碰到需要生成图表的情况,在.NET中以前经常用GDI去绘制,虽然效果也不错,自从.NET 4.0开始,专门为绘制图表而生的Chart控件出现了,有了它,就可以轻松的绘制你 ...

随机推荐

  1. .NET:自定义配置节

    背景 对于编译型应用程序来说,参数化程序行为是非常有必要的,.NET有其标准的配置方法,我们可以可以扩展. 示例 代码 using System; using System.Collections; ...

  2. 在linux下创建自定义service服务

    三个部分 这个脚本分为3个部分:[Unit] [Service] [Install]. Unit Unit表明该服务的描述,类型描述.我们称之为一个单元.比较典型的情况是单元A要求在单元B启动之后再启 ...

  3. 迷失第一季/全集Lost 1迅雷下载

    迷失 第一季 Lost Season 1 (2004)本季看点:影片主要讲述一架客机坠落在太平洋的孤岛上,48名乘客侥幸生还.面对这种荒芜人烟的小岛,他们如何才能生存下去呢?生还者形形色色,国籍.人种 ...

  4. Charles抓包https

    Charles抓包https 灰灰是只小贱狗 2018.05.08 10:46 字数 762 阅读 7800评论 3喜欢 3 抓取HTTPS请求包,对数据进行排查检验 1.安装Charles 2.电脑 ...

  5. Caffe的solver参数介绍

      版权声明:转载请注明出处,谢谢! https://blog.csdn.net/Quincuntial/article/details/59109447 1. Parameters solver.p ...

  6. sugar crm

    百度百科:http://baike.baidu.com/link?url=7SnriwrF-4LcRfXctBbZjLc-UEUqWl3b0YR004pGFk4SJ1qMU9TMj37yFmHRsUS ...

  7. GDSL 1.7 发布,C语言通用数据结构库

    GDSL 1.7 修复了 interval-heap 模块的一个小 bug. GDSL (通用数据结构库) 包含一组程序用于操作各种数据结构.这是一个可移植的库,完全由 ANSI C 编写.为 C 开 ...

  8. Verilog 加法器和减法器(2)

    类似半加器和全加器,也有半减器和全减器. 半减器只考虑当前两位二进制数相减,输出为差以及是否向高位借位,而全减器还要考虑当前位的低位是否曾有借位.它们的真值表如下: 对半减器,diff = x ^y, ...

  9. C++11 std::unique_lock与std::lock_guard区别及多线程应用实例

    C++多线程编程中通常会对共享的数据进行写保护,以防止多线程在对共享数据成员进行读写时造成资源争抢导致程序出现未定义的行为.通常的做法是在修改共享数据成员的时候进行加锁--mutex.在使用锁的时候通 ...

  10. 算法:快速排序实现 & 定制比较函数

    1. 快速排序基本算法 #include<stdio.h> ; int quick_sort(int *a, int start, int end){ if (start >= en ...