Excel生成报表之解决方案---柱状图

首先看下柱状图生成的效果图:

一、微软Excel中图表生成

在Excel中生成这样的柱状图需要如下步骤:

1.首先需要在单元格中填写图表数据源所需要数据。

2.填写完后,点击Excel工具栏中图表按钮。

3.点击图表按钮后,会弹出图表导向的窗口,选择你需要生成的图表类型。

 

4.然后点击下一步,窗口如下:

5.为图表指定数据源并选择生成的系列是按行还是按列。

 

6.最后点击完成,就能在Excel中看到生成的柱状图效果。

 

二、代码编程实现

如果要要代码编写,需要哪些步骤,我们来看下下面的例子:

首先需要导入名称空间。

using System.Data;

using Acey.ExcelX;

using Acey.ExcelX.Charts;

View Code
 1 /// <summary>
 2         /// 这个例子显示如何生成柱形图。
 3         /// </summary>
 4         public void CreateColumnChart()
 5         {
 6             //创建工作薄对象。
 7             IWorkbook workbook = ExcelxApplication.CreateWorkbook();
 8 
 9             //获取该工作薄对象中所有工作表对象。
10             IWorksheetCollection worksheets = workbook.Worksheets;
11 
12             //获取指定索引处的工作表对象。
13             IWorksheet worksheet = worksheets[0];
14 
15             //创建DataTable对象。
16             DataTable dt = new DataTable();
17             //向DataTable对象中添加列。
18             dt.Columns.Add("Employee Name");
19             dt.Columns.Add("Salary", typeof(int));
20 
21             //想DataTable对象中添加行。
22             dt.Rows.Add(new object[2] { "Nelson", 40000 });
23             dt.Rows.Add(new object[2] { "Young", 55500 });
24             dt.Rows.Add(new object[2] { "Lambert", 25000 });
25             dt.Rows.Add(new object[2] { "Johnson", 25050 });
26             dt.Rows.Add(new object[2] { "Lee", 45332 });
27 
28             //导入DataTable数据到工作表指定的位置。
29             worksheet.ImportDataTable(dt, true, "A1");
30 
31             //获取工作表中所有图表对象。
32             IChartCollection charts = worksheet.Charts;
33 
34             //添加柱状图到工作表指定的单元格范围。
35             IChart chart = charts.Add(ChartType.ColumnClustered, 2, 3, 16, 11);
36 
37             //创建指定单元格范围的对象。
38             IRange range = worksheet.Cells.CreateRange("A1:B6");
39 
40             //为该图表对象设置数据源。
41             chart.SetSourceData(range, RowCol.Columns);
42 
43              //为该工作薄保存指定的文件格式。
44             workbook.SaveAs(@"D:\book.xls", FileFormat.Excel97To2003);
45         }

步骤和Excel操作步骤基本一致,只需简单编写这样的代码就能实现生成柱状图的效果,哪怕是机器上没有安装微软的Excel。

 

 

posted @ 2012-11-01 09:26  AceyOffice  阅读(6068)  评论(6编辑  收藏  举报