owc控件是microsoft office 图表控件(owc10为ofiiceXP的组件、owc11为office2003的组件,组件的路径为C:\Program Files\Common Files\Microsoft Shared\Web Components\11\owc11,帮助文件的路径为C:\Program Files\Common Files\Microsoft Shared\Web Components\11\2052),它可以生成三维图、柱状图、饼状图、趋势图和误差图,下面以生成三维图web应用程序为例:
1,添加引用:在“com选项卡”中选择“misrosoft office 11.0 object library”
2,具体代码如下:
1
using System;2
3
using System.Collections;4
5
using System.ComponentModel;6
7
using System.Data;8
9
using System.Drawing;10
11
using System.Web;12
13
using System.Web.UI;14
15
using Microsoft.Office.Interop;16
17
18
namespace WebApplication219
{20
/**//// <summary>21
/// WebForm1 的摘要说明。22
/// </summary>23
public class WebForm1 : System.Web.UI.Page24
{25
26
private void Page_Load(object sender, System.EventArgs e)27
{28
string strCategory = "1" + '\t' + "2" + '\t' + "3" + '\t'+"4" + '\t' + "5" + '\t' + "6" + '\t';29
string strValue = "9" + '\t' + "8" + '\t' + "4" + '\t'+"10" + '\t' + "12" + '\t' + "6" + '\t';30
31
//声明对象32
Microsoft.Office.Interop.Owc11.ChartSpace ThisChart = new Microsoft.Office.Interop.Owc11.ChartSpaceClass();33
Microsoft.Office.Interop.Owc11.ChChart ThisChChart = ThisChart.Charts.Add(0);34
Microsoft.Office.Interop.Owc11.ChSeries ThisChSeries = ThisChChart.SeriesCollection.Add(0);35
36
//显示图例37
ThisChChart.HasLegend = true;38
//标题39
ThisChChart.HasTitle = true;40
ThisChChart.Title.Caption = "统计图";41
42
//给定x,y轴图示说明43
ThisChChart.Axes[0].HasTitle = true;44
ThisChChart.Axes[1].HasTitle = true;45
ThisChChart.Axes[0].Title.Caption = "月份";46
ThisChChart.Axes[1].Title.Caption = "数量";47
48
//图表类型49
ThisChChart.Type = Microsoft.Office.Interop.Owc11.ChartChartTypeEnum.chChartTypeColumnClustered3D;50
//旋转51
ThisChChart.Rotation = 360;52
ThisChChart.Inclination = 10;53
//背景颜色54
ThisChChart.PlotArea.Interior.Color = "red";55
//底色56
ThisChChart.PlotArea.Floor.Interior.Color = "green";57
58
ThisChChart.Overlap = 50;59
60
/**/////给定series的名字61
ThisChSeries.SetData(Microsoft.Office.Interop.Owc11.ChartDimensionsEnum.chDimSeriesNames,Microsoft.Office.Interop.Owc11.ChartSpecialDataSourcesEnum.chDataLiteral.GetHashCode(),"日期");62
//给定分类63
ThisChSeries.SetData(Microsoft.Office.Interop.Owc11.ChartDimensionsEnum.chDimCategories,Microsoft.Office.Interop.Owc11.ChartSpecialDataSourcesEnum.chDataLiteral.GetHashCode(),strCategory);64
//给定值65
ThisChSeries.SetData(Microsoft.Office.Interop.Owc11.ChartDimensionsEnum.chDimValues,Microsoft.Office.Interop.Owc11.ChartSpecialDataSourcesEnum.chDataLiteral.GetHashCode(),strValue);66
//导出图像文件67
try68
{69
70
ThisChart.ExportPicture(Server.MapPath("chart.gif"),"gif",600,350);71
Response.Write( "<IMG SRC='" + Server.MapPath("chart.gif") + "'/>");72
}73
catch(Exception ee)74
{75
76
}77
78
// object [] objarr=new object[3];79
// objarr[0]=12;80
// objarr[1]=13;81
// objarr[2]=14;82
// DataTable dt=new DataTable();83
// dt.Columns.Add("id");84
// dt.Columns.Add("wei");85
// dt.Columns.Add("hei");86
// dt.Rows.Add(objarr);87
// DataSet ds=new DataSet();88
// ds.Tables.Add(dt);89
// Response.Write(this.toChartLine3(ds,"100","","adasd","sdasad","sadsadsa"));90
}91
92
Web 窗体设计器生成的代码#region Web 窗体设计器生成的代码93
override protected void OnInit(EventArgs e)94
{95
//96
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。97
//98
InitializeComponent();99
base.OnInit(e);100
}101
102
/**//// <summary>103
/// 设计器支持所需的方法 - 不要使用代码编辑器修改104
/// 此方法的内容。105
/// </summary>106
private void InitializeComponent()107
{108
this.Load += new System.EventHandler(this.Page_Load);109
110
}111
#endregion112
113
}114
}帮助OWCDCH11.CHM
系统驱动器:\Program Files\Common Files\Microsoft Shared\Web Components\11\2052\OWCDCH11.CHM(但是必须安装office 2003)