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。