利用 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 + "'/>";

 

你可能感兴趣的:(String,Office,报表)