数据表也称为模拟运算表,是Excel图表的一种元素,它可以在图表的下方显示数据源中的数据。本文将介绍如何使用Spire.XLS for Java给Excel图表添加数据表。
import com.spire.xls.*;
import com.spire.xls.charts.ChartSerie;
public class AddDataTableToChart {
public static void main(String[] args){
//创建Excel文档
Workbook workbook = new Workbook();
//获取第一个工作表
Worksheet sheet = workbook.getWorksheets().get(0);
//设置工作表名称
sheet.setName("统计表");
//向工作表添加数据
sheet.getRange().get("A1").setValue("月份");
sheet.getRange().get("A2").setValue("1月销量");
sheet.getRange().get("A3").setValue("2月销量");
sheet.getRange().get("A4").setValue("3月销量");
sheet.getRange().get("B1").setValue("海尔");
sheet.getRange().get("B2").setNumberValue(950);
sheet.getRange().get("B3").setNumberValue(500);
sheet.getRange().get("B4").setNumberValue(900);
sheet.getRange().get("C1").setValue("美的");
sheet.getRange().get("C2").setNumberValue(680);
sheet.getRange().get("C3").setNumberValue(720);
sheet.getRange().get("C4").setNumberValue(890);
sheet.getRange().get("D1").setValue("格力");
sheet.getRange().get("D2").setNumberValue(980);
sheet.getRange().get("D3").setNumberValue(1070);
sheet.getRange().get("D4").setNumberValue(1200);
//添加图表到工作表
Chart chart = sheet.getCharts().add(ExcelChartType.Column3DClustered);
chart.setDataRange(sheet.getRange().get("B1:D4"));
chart.setSeriesDataFromRange(false);
chart.setTopRow(7);
chart.setBottomRow(28);
chart.setLeftColumn(3);
chart.setRightColumn(11);
chart.setChartTitle("Chart with Data Table");
chart.getChartTitleArea().isBold(true);
chart.getChartTitleArea().setSize(12);
ChartSerie cs1 = chart.getSeries().get(0);
cs1.setCategoryLabels(sheet.getRange().get("A2:A4"));
//添加数据表到图表
chart.hasDataTable(true);
//保存结果文档
workbook.saveToFile("AddDataTable.xlsx", ExcelVersion.Version2010);
}
}