ASP.NET Web Pages – Chart 帮助器
Chart 帮助器 – 众多有用的 ASP.NET Web 帮助器之一。
Chart 帮助器
在前面的章节中,您已经学习了如何使用 ASP.NET 的 \”帮助器\”。
前面已经介绍了如何使用 \”WebGrid 帮助器\” 在网格中显示数据。
本章介绍如何使用 \”Chart 帮助器\” 以图形化的形式显示数据。
\”Chart 帮助器\” 可以创建不同类型的带有多种格式化选项和标签的图表图像。它可以创建面积图、条形图、柱形图、折线图、饼图等标准图表,也可以创建像股票图表这样的更专业的图表。
在图表中显示的数据可以是来自一个数组,一个数据库,或者一个文件中的数据。
根据数组创建图表
下面的实例显示了根据数组数据显示图表所需的代码:
实例
@{
var myChart = new Chart(width: 600, height: 400)
.AddTitle(\"Employees\")
.AddSeries(chartType: \"column\",
xValue: new[] { \"Peter\", \"Andrew\", \"Julie\", \"Mary\", \"Dave\" },
yValues: new[] { \"2\", \"6\", \"4\", \"5\", \"3\" })
.Write();
}
运行实例 »
– new Chart 创建一个新的图表对象并且设置它的宽度和高度
– AddTitle 方法指定了图表的标题
– AddSeries 方法向图表中增加数据
– chartType 参数定义图表的类型
– xValue 参数定义 x 轴的名称
– yValues 参数定义 y 轴的名称
– Write() 方法显示图表
根据数据库创建图表
您可以执行一个数据库查询,然后使用查询结果中的数据来创建一个图表:
实例
@{
var db = Database.Open(\"SmallBakery\");
var dbdata = db.Query(\"SELECT Name, Price FROM Product\");
var myChart = new Chart(width: 600, height: 400)
.AddTitle(\"Product Sales\")
.DataBindTable(dataSource: dbdata, xField: \"Name\")
.Write();
}
运行实例 »
– var db = Database.Open 打开数据库(将数据库对象赋值给变量 db)
– var dbdata = db.Query 执行数据库查询并保存结果在 dbdata 中
– new Chart 创建一个新的图表对象并且设置它的宽度和高度
– AddTitle 方法指定了图表的标题
– DataBindTable 方法将数据源绑定到图表
– Write() 方法显示图表
除了使用 DataBindTable 方法之外,另一种方法是使用 AddSeries(见前面的实例)。DataBindTable 更容易使用,但是 AddSeries 更加灵活,因为您可以更明确地指定图表和数据:
实例
@{
var db = Database.Open(\"SmallBakery\");
var dbdata = db.Query(\"SELECT Name, Price FROM Product\");
var myChart = new Chart(width: 600, height: 400)
.AddTitle(\"Product Sales\")
.AddSeries(chartType:\"Pie\",
xValue: dbdata, xField: \"Name\",
yValues: dbdata, yFields: \"Price\")
.Write();
}
运行实例 »
根据 XML 数据创建图表
第三种创建图表的方法是使用 XML 文件作为图表的数据:
实例
@using System.Data;
@{
var dataSet = new DataSet();
dataSet.ReadXmlSchema(Server.MapPath(\"data.xsd\"));
dataSet.ReadXml(Server.MapPath(\"data.xml\"));
var dataView = new DataView(dataSet.Tables[0]);
var myChart = new Chart(width: 600, height: 400)
.AddTitle(\"Sales Per Employee\")
.AddSeries(\"Default\", chartType: \"Pie\",
xValue: dataView, xField: \"Name\",
yValues: dataView, yFields: \"Sales\")
.Write();}
}
运行实例 »
点我分享笔记