基本介绍: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. git 两个中心仓库上的分支 merge

    首先在一个中心仓库里面添加另外一个仓库的所有分支. 命令: git remote add Cangku2 https://github.com/abc/abc.git git fetch 这之后在使用 ...

  2. java初始化ArrayList

    初始化ArrayList我们一般这样写:ArrayList<String> places = new ArrayList<String>();places.add(" ...

  3. 转: MySQL5.7 ERROR 1142 (42000)问题

    1,mysql全库导入报错 [root@dev_121_21 ~]# mysql--socket=/usr/local/mysql/mysql.sock --default-character-set ...

  4. 设置Images.xcassets后启动仍旧黑屏的问题

    换了XCode6之后,发现以前写Icon-76.png这样很麻烦,就使用了Image.xcassets,公司所有测试机跑了一下,发现没什么问题.唯独有一台设置有问题,iphone5 ios6.0系统, ...

  5. cocos2d-x中CCLabelAtlas的小图片拼接

    美术在设计UI时,很多界面可能使用了数字图片来展示一些效果,比如CD或者 x1/x2等,一般她们都会切成很多单张小的图片,类似这样   cocox2d-x中CCLabelAtlas支持直接从图片中读取 ...

  6. SqlServer 还原数据库 代码实现

    RESTORE DATABASE TargetDB FROM DISK = 'D:\DataBase\DB.bak' with replace, MOVE 'DB' TO 'D:\DataBase\T ...

  7. Android性能检测工具——traceview

    之前的几篇文章中介绍了android中常用的一些工具,今天介绍的工具也是比较实用和方便的,它可以用量化的指标告诉我们哪个方法执行的时间最长,被调用的次数最多,有没有重复调用.下面我们就来看看它是怎么为 ...

  8. 100base-T

    100Base-T是一种以100Mbps速率工作的局域网(LAN)标准,它通常被称为快速以太网标准,并使用两对UTP(非屏蔽双绞线)铜质电缆. 快速以太网 : 与10BASE-T的区别在于网络速率是1 ...

  9. 【BZOJ】【3339】Rmq Problem

    离线+线段树 Orz Hzwer,引用题解: 这一题在线似乎比较麻烦 至于离线.. 首先按照左端点将询问排序 然后一般可以这样考虑 首先如何得到1-i的sg值呢 这个可以一开始扫一遍完成 接着考虑l- ...

  10. [leetcode]Validate Binary Search Tree @ Python

    原题地址:https://oj.leetcode.com/problems/validate-binary-search-tree/ 题意:检测一颗二叉树是否是二叉查找树. 解题思路:看到二叉树我们首 ...