首页 | 互联网 | IT动态 | IT培训 | Cisco | Windows | Linux | Java | .Net | Oracle | 软件测试 | C/C++ | 嵌入式开发 | 存储世界 | 服务器
网络设备 | IDC | 安全 | 求职招聘 | 数字网校 | 网页设计 | 平面设计 | 技术专题 | 电子书下载 | 教学视频 | 源码下载 | 搜索 | 博客 | 论坛
中国IT实验室Dotnet频道
中国IT教育
Google
首页 ASP.NET  C#  XML/WebService ADO.NET VC.NET VB.NET .NET 资讯动态 专题 RSS订阅 讨论 下载
您现在的位置: 中国IT实验室 >> Dotnet >> ASP.NET >> 正文

ASP.NET 2.0中使用OWC生成图表

  ASP.NET 2.0中,要显示图型的话,可以用MS office 2003的OWC组件,可以十分方便地看到图表。在工程中,首先添加microsoft office web components 11.0的引用就可以了,然后要using Microsoft.Office.Interop.Owc11;
 
  1、生成柱状图
 
  

//创建X坐标的值,表示月份
int[] Month = new int[3] { 1, 2, 3 };
//创建Y坐标的值,表示销售额
double[] Count = new double[3] { 120,240,220};
//创建图表空间
ChartSpace mychartSpace = new ChartSpace();
//在图表空间内添加一个图表对象
ChChart mychart = mychartSpace.Charts.Add(0);
//设置图表类型,本例使用柱形
mychart.Type = ChartChartTypeEnum.chChartTypeColumnClustered;
//设置图表的一些属性
//是否需要图例
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 = "销量";
//添加三个图表块
mychart.SeriesCollection.Add(0);
mychart.SeriesCollection.Add(0);
mychart.SeriesCollection.Add(0);
//设置图表块的属性
//标题
mychart.SeriesCollection[0].Caption = "一月份";
//X坐标的值属性
mychart.SeriesCollection[0].SetData(ChartDimensionsEnum.chDimCategories,
(int)ChartSpecialDataSourcesEnum.chDataLiteral, Month[0]);
//y坐标的值属性
mychart.SeriesCollection[0].SetData(ChartDimensionsEnum.chDimValues,
(int)ChartSpecialDataSourcesEnum.chDataLiteral, Count[0]);
//第二个块
mychart.SeriesCollection[1].Caption = "二月份";
//X坐标的值属性
mychart.SeriesCollection[1].SetData(ChartDimensionsEnum.chDimCategories,
(int)ChartSpecialDataSourcesEnum.chDataLiteral, Month[1]);
//y坐标的值属性
mychart.SeriesCollection[1].SetData(ChartDimensionsEnum.chDimValues,
(int)ChartSpecialDataSourcesEnum.chDataLiteral, Count[1]);
//第三个块
mychart.SeriesCollection[2].Caption = "三月份";
//X坐标的值属性
mychart.SeriesCollection[2].SetData(ChartDimensionsEnum.chDimCategories,
(int)ChartSpecialDataSourcesEnum.chDataLiteral, Month[2]);
//y坐标的值属性
mychart.SeriesCollection[2].SetData(ChartDimensionsEnum.chDimValues,
(int)ChartSpecialDataSourcesEnum.chDataLiteral, Count[2]);
//生成图片
mychartSpace.ExportPicture(Server.MapPath(".") + @"\test.jpg", "jpg", 500, 450);
//加载图片
Image1.ImageUrl = Server.MapPath(".") + @"\test.jpg";


  2、生成饼状图
 
  

protected void Page_Load(object sender, EventArgs e)
{
//创建X坐标的值,表示月份
int[] Month ={ 1, 2, 3 };
//创建Y坐标的值,表示销售额
double[] Count ={ 120, 240, 220 };
string strDataName = "";
string strData = "";
//创建图表空间
ChartSpace mychartSpace = new ChartSpace();
//在图表空间内添加一个图表对象
ChChart mychart = mychartSpace.Charts.Add(0);
//设置每块饼的数据
for (int i = 0; i < Count.Length; i++)
{
strDataName += Month[i] + "\t";
strData += Count[i].ToString() + "\t";
}
//设置图表类型,本例使用柱形
mychart.Type = ChartChartTypeEnum.chChartTypePie;
//设置图表的一些属性
//是否需要图例
mychart.HasLegend = true;
//是否需要主题
mychart.HasTitle = true;
//主题内容
mychart.Title.Caption = "一季度总结";
//添加图表块
mychart.SeriesCollection.Add(0);
//设置图表块的属性
//分类属性
mychart.SeriesCollection[0].SetData(ChartDimensionsEnum.chDimCategories,

(int)ChartSpecialDataSourcesEnum.chDataLiteral, strDataName);
//值属性
mychart.SeriesCollection[0].SetData(ChartDimensionsEnum.chDimValues,

(int)ChartSpecialDataSourcesEnum.chDataLiteral, strData);
//显示百分比
ChDataLabels mytb= mychart.SeriesCollection[0].DataLabelsCollection.Add();
mytb.HasPercentage = true;
//生成图片
mychartSpace.ExportPicture(Server.MapPath(".") + @"\test.gif", "gif", 500, 450);
//加载图片
Image1.ImageUrl = Server.MapPath(".") + @"\test.gif";
}



 

【责编:Zenghui】

中国IT教育

相关产品和培训
文章评论
 友情推荐链接
 认证培训
 专题推荐

 ·WEB程序开发--ASP.NET和PHP、JSP究竟学哪个?
 ·五步带你入门XML
 ·关于Java框架技术专题
 ·XML全攻略技术专题
 ·JAVA开源技术介绍专题
 ·Java嵌入式开发之J2ME技术专题
 ·超前体验 Oracle 11g的5个新特性…
 ·揭密使用VB.NET的五个实用技巧
 ·Oracle和SQL Server常用函数对比专题…
 ·展现C#世界 C#程序设计专题…
 今日更新
 社区讨论
 博客论点
 频道精选
 Dotnet频道相关导航