利用 Office 的 OWC 做报表

//创建ChartSpace对象来放置图表
   OWC11.ChartSpace objCSpace = new OWC11.ChartSpaceClass ();
   //在ChartSpace对象中添加图表,Add方法返回chart对象
   //OWC.WCChart objChart = objCSpace.Charts.Add (0);
   OWC11.ChChart objChart = objCSpace.Charts.Add (0);

   //指定图表的类型。类型由OWC.ChartChartTypeEnum枚举值得到
   objChart.Type = OWC11.ChartChartTypeEnum.chChartTypeColumnClustered;

   objChart.Type = OWC11.ChartChartTypeEnum.chChartTypeColumnClustered3D;

   //指定图表是否需要图例
   objChart.HasLegend = true;

   //给定标题
   objChart.HasTitle = true;
   objChart.Title.Caption= "上半年分布图";

   //给定x,y轴的图示说明
   objChart.Axes[0].HasTitle = true;
   objChart.Axes[0].Title.Caption = "Y : 数量";
   objChart.Axes[1].HasTitle = true;
   objChart.Axes[1].Title.Caption = "X : 月份";

   //计算数据
   /*categories 和 values 可以用tab分割的字符串来表示*/
   string strSeriesName = "图例 1";
   string strCategory = "1" + '/t' + "2" + '/t' + "3" + '/t'+"4" + '/t' + "5" + '/t' + "6" + '/t';
   string strValue = "9" + '/t' + "8" + '/t' + "4" + '/t'+"10" + '/t' + "12" + '/t' + "6" + '/t';

   //添加一个series
   objChart.SeriesCollection.Add(0);

   //给定series的名字
   objChart.SeriesCollection[0].SetData (OWC11.ChartDimensionsEnum.chDimSeriesNames,
    + (int)OWC11.ChartSpecialDataSourcesEnum.chDataLiteral, strSeriesName);

   //给定分类
   objChart.SeriesCollection[0].SetData (OWC11.ChartDimensionsEnum.chDimCategories,
    + (int)OWC11.ChartSpecialDataSourcesEnum.chDataLiteral, strCategory);

   //给定值
   objChart.SeriesCollection[0].SetData
    (OWC11.ChartDimensionsEnum.chDimValues,
    (int)OWC11.ChartSpecialDataSourcesEnum.chDataLiteral, strValue);
   //输出成GIF文件.
   string strAbsolutePath = outPicPath;  //(Server.MapPath(".")) + "//i//test.gif";
   objCSpace.ExportPicture(strAbsolutePath, "GIF", 600, 350);

   //创建GIF文件的相对路径.
   string strRelativePath = "./i/test.gif";

   //把图片添加到placeholder.
   string strImageTag = "<IMG SRC='" + strRelativePath + "'/>";

 
Retrieving the COM class factory for component with CLSID {0002E55D-0000-0000-C000-000000000046} failed due to the following error: 80040154. 收藏 Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. Exception Details: System.Runtime.InteropServices.COMException: Retrieving the COM class factory for component with CLSID {0002E55D-0000-0000-C000-000000000046} failed due to the following error: 80040154. Source Error: An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below. Stack Trace: [COMException (0x80040154): Retrieving the COM class factory for component with CLSID {0002E55D-0000-0000-C000-000000000046} failed due to the following error: 80040154.] GraphPage.Page_Load(Object sender, EventArgs e) +1097 System.Web.Util.CalliHelper.EventArgFunctionCaller(IntPtr fp, Object o, Object t, EventArgs e) +14 System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e) +35 System.Web.UI.Control.OnLoad(EventArgs e) +99 System.Web.UI.Control.LoadRecursive() +50 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +627 -------------------------------------------------------------------------------- Version Information: Microsoft .NET Framework Version:2.0.50727.3082; ASP.NET Version:2.0.50727.3082 请大家帮忙 谢谢 Server Error in '/' Application. -------------------------------------------------------------------------------- Retrieving the COM class factory for component with CLSID {0002E55D-0000-0000-C000-000000000046} failed due to the following error: 80040154.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值