在图表中,x轴代表类别,y轴代表数值(好比类与他们的属性)

这是数据库中的数据,下面我们选前5辆车,在图表中显示他们的名字,油耗,功率,价格

创建查询数据的类

class CarDA
{
public List < CarData> select()
{
List < CarData > list= null;
SqlConnection conn = new SqlConnection("server=.;database=mydb;user=sa;pwd=123");
conn.Open();
SqlCommand cmd = conn.CreateCommand();
cmd.CommandText = "select top 5* from car";
SqlDataReader dr= cmd.ExecuteReader() ;
if(dr.HasRows)
{
list = new List<CarData>();
while(dr.Read())
{
CarData data = new CarData();
data = new CarData();
data.Name = dr["name"].ToString();
data.Oil=(decimal)dr["oil"];
data.Powers=dr["powers"].ToString();
data.Price=(decimal )dr["price"];
list.Add(data);
}
}
return list;
cmd.Dispose();
conn.Close();
}
}
class CarData
{
private string _name; public string Name
{
get { return _name; }
set { _name = value; }
}
private decimal _oil; public decimal Oil
{
get { return _oil; }
set { _oil = value; }
}
private string _powers; public string Powers
{
get { return _powers; }
set { _powers = value; }
}
private decimal _price; public decimal Price
{
get { return _price; }
set { _price = value; }
}
}

窗体一加载,给图表绑定数据源,注意:绑定时以一列为单位,指明每列的x轴和y轴分别对应数据源的属性名(也就是泛型集合里面对象的属性名)。注意:指定的必须是属性名,不能是字段名,这也要求数据源的对象的字段必须封装,必须有属性。

这里体现了C#编程的封装特性,我们给chart图表工具一个数据源,让它帮我们形象的展示数据,我们并不关心到底是怎样实现的,我们只告诉它需要显示那些数据,剩下的就交给chart图表工具了。

private void Form1_Load(object sender, EventArgs e)
{
List<CarData> list = new CarDA().select();
if (list != null)
{
chart1.DataSource = list;
chart1.Series["Series1"].XValueMember="name";
chart1.Series["Series1"].YValueMembers = "oil";
} }

运行结果

在Series属性里,可以设置每列的显示名字,并添加新列

private void Form1_Load(object sender, EventArgs e)
{
List<CarData> list = new CarDA().select();
if (list != null)
{
chart1.DataSource = list;
chart1.Series["油耗"].XValueMember="name";
chart1.Series["油耗"].YValueMembers = "oil";
chart1.Series["功率"].XValueMember = "name";
chart1.Series["功率"].YValueMembers = "powers";
chart1.Series["价格"].XValueMember = "name";
chart1.Series["价格"].YValueMembers = "price";
} }

C#chart图表的应用的更多相关文章

  1. NPOI根据模板生成chart图表导出Excel

    导入NPOI的全部dll. 因为NPOI的API里面还没有对于Chart图表方面的操作,所以只能根据提示做好的图表作为模板,修改数据源的方法来改变图表. 注意:NPOI要用2003版以下的excel才 ...

  2. Winform中Chart图表的简单使用

    在常见的一些数据采集的系统中, 都少不了一个就是, 数据分析, 无论是报表的形式, 还是图形的形式. 他都是可以迅速的展现一个数据趋势的实现方法, 而今天, 就是简单介绍一下, 微软的工具库自带的 C ...

  3. 基于HTML5 Canvas的3D动态Chart图表

    发现现在工业SCADA上或者电信网管方面用图表的特别多,虽然绝大部分人在图表制作方面用的是echarts,他确实好用,但是有些时候我们不能调用别的插件,这个时候就得自己写这些美丽的图表了,然而图表轻易 ...

  4. 关于微软C#中的CHART图表控件的简单使用【转】

    最近公司项目要用到Chart图表控件,这是一个比较老的东西了,目前网络上似乎已经不太流行这个控件,但是只要配置了相关的属性,效果还是可以的.前前后后摸索了好久,接下来谈谈这个件控件最重要的几个属性. ...

  5. Chart图表整合——面积对比图、扇形图、柱状图

    一. chart图表demo网址 网址:http://antv.alipay.com/zh-cn/f2/3.x/demo/index.html 二. 本文主要对面积对比图,扇形图,柱状图三大常见图进行 ...

  6. 关于微软C#中的CHART图表控件的简单使用

    最近公司项目要用到Chart图表控件,这是一个比较老的东西了,目前网络上似乎已经不太流行这个控件,但是只要配置了相关的属性,效果还是可以的.前前后后摸索了好久,接下来谈谈这个件控件最重要的几个属性. ...

  7. poi自动生成Ecxel表格和Chart图表

    最近因为业务需求,需要做poi自动导出Ecxel表格和Chart折线图的功能. 所以我在网上找到了一篇关于poi生成Chart图表的博客,代码很详细,但是缺少相关注释说明. 想要将它改造成自己需要的样 ...

  8. BootstrapBlazor实战 Chart 图表使用(1)

    BootstrapBlazor组件 Chart 图表介绍 通过给定数据,绘画各种图表的组件 本文主要介绍三种图表使用:折线图,柱状图,饼图 1.新建工程 新建工程b06chart,使用 nuget.o ...

  9. 矢量Chart图表嵌入HTML5网络拓扑图的应用

    使用 HT for Web (以下简称 HT)开发HTML5网络拓扑图的开发者有 Chart 需求的项目的时候,感觉很痛苦,HT 集成的 Chart 组件中,并不包含有坐标,在展现方面不是很直观,但是 ...

随机推荐

  1. LabVIEW面向对象的ActorFramework(3)

    四.LabVIEW面向对象的编程架构:Actor Framework Actor Framework是一个软件类库,用以支持编写有多个VI独立运行且相互间可通信的应用程序,在该类型应用程序中,每个VI ...

  2. 通过整合遥感数据和社交媒体数据来进行城市土地利用的分类( Classifying urban land use by integrating remote sensing and social media data)DOI: 10.1080/13658816.2017.1324976 20.0204

    Classifying urban land use by integrating remote sensing and social media data   Xiaoping Liu, Jialv ...

  3. Innodb特性以及实现原理

    Innodb五大特性 1.insert buffer2.double write3.自适应哈希索引4.异步io5.邻接页刷新 1.insert buffer(change buffer) 作用:将非聚 ...

  4. DispatcherServlet继承体系

    GenericServlet                 implements Servlet, ServletConfig, java.io.Serializable | HttpServlet ...

  5. dwz框架

    官网:http://jui.org/index_menu.html PDF教程:http://jui.org/doc/dwz-user-guide.pdf DWZ最大的特点是使用html扩展的方式来代 ...

  6. POJ 1164:The Castle

    The Castle Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 6677   Accepted: 3767 Descri ...

  7. 什么是控制反转IOC

    1.IOC 是什么 IOC- Inversion of Control , 即“控制反转” ,不是一个技术,而是一个设计思想,在java 开发中,IOC意味着将你设计好的Java 对象交个容器控制,而 ...

  8. JavaScript之基于原型链的继承

    本文介绍下js的OOP中的继承. 上图的要点为:Foo函数在创建时会自动生成内置属性prototype,而typeof Foo.prototype是object类型的. 上图的要点为:Foo.prot ...

  9. 图解kubernetes容器状态同步机制核心实现

    在K8s中将Pod调度到某一台Node节点之后,后续的状态维护信息则是由对应机器上的kubelet进行维护,如何实时反馈本地运行状态,并通知apiserver则是设计的难点, 本节主要是通过感知Pod ...

  10. Thread--synchronized&volatile