组合图表是指在同一张图表中包含两种或以上样式的图表,这种图表可以帮助我们更全面的分析数据。常见的组合图表是柱形图和折线图混合图表,这篇文章将介绍如何利用C#和免费版Spire.XLS组件创建这种图表。
Excel文档数据截图:
在使用以下代码前需要引用Spire.Xls.dll文件,并添加以下命名空间:
using Spire.Xls;using Spire.Xls.Charts; 具体步骤:
步骤1:创建Workbook实例并加载Excel文档。
Workbook workbook = new Workbook();workbook.LoadFromFile("Input.xlsx");
步骤2:获取第一张工作表。
Worksheet sheet = workbook.Worksheets[0];步骤3:添加图表到工作表。
Chart chart = sheet.Charts.Add();chart.DataRange = sheet.Range["A1:D5"];chart.SeriesDataFromRange = false;
步骤4:设置图表的位置。
chart.LeftColumn = 6;chart.TopRow = 1;chart.RightColumn = 12;chart.BottomRow = 13;
步骤5:给图表的数据系列设置不同的图表类型。
//将图表的系列1和系列2的图表类型设置为柱形图表var cs1 = (ChartSerie)chart.Series[0];cs1.SerieType = ExcelChartType.ColumnClustered;var cs2 = (ChartSerie)chart.Series[1];cs2.SerieType = ExcelChartType.ColumnClustered;//将图表的系列3的图表类型设置为折线图表var cs3 = (ChartSerie)chart.Series[2];cs3.SerieType = ExcelChartType.LineMarkers;//设置图表标题为空chart.ChartTitle = string.Empty;
步骤6:保存文档。
workbook.SaveToFile("Output.xlsx", ExcelVersion.Version2010); 效果图:
完整代码:
Workbook workbook = new Workbook();//加载Excel文档workbook.LoadFromFile("Input.xlsx");//获取第一张工作表Worksheet sheet = workbook.Worksheets[0];//添加图表到工作表Chart chart = sheet.Charts.Add();chart.DataRange = sheet.Range["A1:D5"];chart.SeriesDataFromRange = false;//设置图表的位置chart.LeftColumn = 6;chart.TopRow = 1;chart.RightColumn = 12;chart.BottomRow = 13;//将图表的系列1和系列2的图表类型设置为柱形图表var cs1 = (ChartSerie)chart.Series[0];cs1.SerieType = ExcelChartType.ColumnClustered;var cs2 = (ChartSerie)chart.Series[1];cs2.SerieType = ExcelChartType.ColumnClustered;//将图表的系列3的图表类型设置为折线图表var cs3 = (ChartSerie)chart.Series[2];cs3.SerieType = ExcelChartType.LineMarkers;//设置图表标题为空chart.ChartTitle = string.Empty;//保存文档workbook.SaveToFile("Output.xlsx", ExcelVersion.Version2010);