OWC组件生成柱状图
2012-03-29 11:09
302 查看
1、OWC介绍
在Microsoft Office 2003中包含有一组称为OWC的新控件集合。利用这些组件,可以在Web浏览器及其他传统的编程环境下,创建许多有用的数据分析解决方案和报表生成解决方案。下面几篇文章是使用OWC组件生成图表方面的相关知识。
OWC是与Microsoft Office一起安装的一组ActiveX控件。如果在计算机上安装了Office Web组件,则可以在Internet Explorer 5.01 SP2或更高版本中对电子表格、数据透视表和图表进行交互访问。如果在Microsoft Access的数据访问页中使用这些组件,则需要安装Internet Explorer 5.01 SP2或更高版本。如果计算机上未安装Office Web组件,可以从Microsoft公司的网站下载Office Web组件。这样,用户无须在计算机上安装Office软件,就可使用OWC。
OWC库中包含了Spreadsheet(电子数据表)组件、Chart(图表)组件、PivotTable(数据透视表)组件和Data Source(数据源)4个组件。Office Web Components的非凡之处在于它们可以在诸如Web页面、Visual Basic表单等控件容器中使用,也可在内存中作为不可见的对象使用。大多数COM控件只能在控件容器中作为可视控件使用,而大多数不可见对象则只能在内存中使用,而不能放入表单中或Web页面中。
2、设计思路
在使用OWC组件生成图片之前,首先需要将OWC组件引用到网站工程中。引用OWC组件之后,需要创建一个图表控件,然后在图表控件中添加一个图表对象,并且设置图表对象的相关属性,获得图表块的数据信息,最后使用图表控件的方法生成一个保存有图表数据信息的图片,在Web网页中通过调用该图片显示生成的图表信息,具体实现的设计思路如下图所示。
3、前台代码
<img alt="" src="temp.gif" style="width: 600px; height: 450px" />
4、后台代码
4.1、项目添加引用 Microsoft Office Web Components 11.0。
4.2、在文件里面引用如下
4.3、具体程序代码
注:在自己项目Web.config里面配置数据库连接串。
4.4、数据结果如下
5、效果图如下
参考:http://book.51cto.com/art/201112/308970.htm
在Microsoft Office 2003中包含有一组称为OWC的新控件集合。利用这些组件,可以在Web浏览器及其他传统的编程环境下,创建许多有用的数据分析解决方案和报表生成解决方案。下面几篇文章是使用OWC组件生成图表方面的相关知识。
OWC是与Microsoft Office一起安装的一组ActiveX控件。如果在计算机上安装了Office Web组件,则可以在Internet Explorer 5.01 SP2或更高版本中对电子表格、数据透视表和图表进行交互访问。如果在Microsoft Access的数据访问页中使用这些组件,则需要安装Internet Explorer 5.01 SP2或更高版本。如果计算机上未安装Office Web组件,可以从Microsoft公司的网站下载Office Web组件。这样,用户无须在计算机上安装Office软件,就可使用OWC。
OWC库中包含了Spreadsheet(电子数据表)组件、Chart(图表)组件、PivotTable(数据透视表)组件和Data Source(数据源)4个组件。Office Web Components的非凡之处在于它们可以在诸如Web页面、Visual Basic表单等控件容器中使用,也可在内存中作为不可见的对象使用。大多数COM控件只能在控件容器中作为可视控件使用,而大多数不可见对象则只能在内存中使用,而不能放入表单中或Web页面中。
2、设计思路
在使用OWC组件生成图片之前,首先需要将OWC组件引用到网站工程中。引用OWC组件之后,需要创建一个图表控件,然后在图表控件中添加一个图表对象,并且设置图表对象的相关属性,获得图表块的数据信息,最后使用图表控件的方法生成一个保存有图表数据信息的图片,在Web网页中通过调用该图片显示生成的图表信息,具体实现的设计思路如下图所示。
3、前台代码
<img alt="" src="temp.gif" style="width: 600px; height: 450px" />
4、后台代码
4.1、项目添加引用 Microsoft Office Web Components 11.0。
4.2、在文件里面引用如下
using Microsoft.Office.Interop.Owc11; using System.Data.Sql; using System.Data.SqlClient; using System.Configuration; using System.Data;
4.3、具体程序代码
namespace GenerateCharts { public partial class Column : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { //创建图表空间 ChartSpace myspace = new ChartSpace(); //添加一个图表对象 ChChart mychart = myspace.Charts.Add(0); mychart.Type = ChartChartTypeEnum.chChartTypeColumnClustered;//柱形 //mychart.Type = ChartChartTypeEnum.chChartTypeBarClustered;//条形图 //mychart.Type = ChartChartTypeEnum.chChartTypeLine;//折线图 //mychart.Type = ChartChartTypeEnum.chChartTypeArea;//面积图 //mychart.Type = ChartChartTypeEnum.chChartTypeArea3D;//3D面积图 //mychart.Type = ChartChartTypeEnum.chChartTypeBar3D;//3D条形图 //mychart.Type = ChartChartTypeEnum.chChartTypeColumn3D;//3D柱形图 //...等 //设置图表相关属性 mychart.HasLegend = true; mychart.HasTitle = true; mychart.Title.Caption = "员工信息图表"; //设置X,Y轴坐标 mychart.Axes[0].HasTitle = true; mychart.Axes[0].Title.Caption = "籍贯"; mychart.Axes[1].HasTitle = true; mychart.Axes[1].Title.Caption = "人数"; //连接并且打开数据库 SqlConnection sqlcon = new SqlConnection(ConfigurationManager.ConnectionStrings["connection"].ConnectionString); sqlcon.Open(); string strsqls = "select 籍贯, count(籍贯) as 人数 from tb_ygxx group by 籍贯"; SqlDataAdapter adsa = new SqlDataAdapter(strsqls, sqlcon); DataSet adds = new DataSet(); adsa.Fill(adds); if (adds.Tables[0].Rows.Count > 0) { //添加图表 for (int i = 0; i < adds.Tables[0].Rows.Count; i++) { mychart.SeriesCollection.Add(0); } //添加图表数据 for (int j = 0; j < adds.Tables[0].Rows.Count; j++) { //设置图表块属性 mychart.SeriesCollection[j].Caption = adds.Tables[0].Rows[j][0].ToString(); mychart.SeriesCollection[j].SetData(ChartDimensionsEnum.chDimCategories, (int)ChartSpecialDataSourcesEnum.chDataLiteral, adds.Tables[0].Rows[j][0].ToString()); mychart.SeriesCollection[j].SetData(ChartDimensionsEnum.chDimValues, (int)ChartSpecialDataSourcesEnum.chDataLiteral, Convert.ToInt32(adds.Tables[0].Rows[j][1].ToString())); } } sqlcon.Close(); //生成图表 myspace.ExportPicture(Server.MapPath(".") + @"\temp.gif", "gif", 600, 450); } } }
注:在自己项目Web.config里面配置数据库连接串。
4.4、数据结果如下
5、效果图如下
参考:http://book.51cto.com/art/201112/308970.htm
相关文章推荐
- OWC组件生成柱状图
- 在ASP.NET(c#)中调用wsChart图表组件生成柱状图
- 使用OWC生成饼状图和柱状图
- 使用OWC生成饼状图和柱状图
- OWC组件生成饼状图
- OWC组件生成Excel数据表
- C#利用OWC组件生成数据报表
- ASP.NET 2.0中OWC生成柱状图和饼状图的源代码
- asp.net 使用owc组件画图(折线图 面积图 柱状图等)
- ASP.NET 2.0中OWC生成柱状图和饼状图
- asp.net利用OWC生成饼状图、柱状图
- ASP.NET 2.0中OWC生成柱状图和饼状图
- ASP 中利用OWC 服务器端组件动态生成图表
- ASP.NET 2.0中OWC生成柱状图和饼状图的源代码
- 转 ASP.NET 2.0中OWC生成柱状图和饼状图的源代码
- asp.net中安装使用OWC组件生成EXECEL步骤
- asp.net中安装使用OWC组件生成EXECEL步骤
- C#利用OWC组件生成数据报表
- OWC组件生成折线图
- ASP.NET中利用OWC组件生成EXCEL表(转)