class="MsoNormal">本文介绍通过Java程序在Excel工作表中创建雷达图表的方法。
程序环境
Spire.Xls.jar 免费版本3.9.1
Jdk版本要求1.6.0或者更高版本
注意,这里支持两种方法导入jar:
方法1:可自行到官网下载免费版,并解压,将lib文件夹下的jar导入Java程序;
?
方法2:在maven中配置pom.xml文件,指定maven仓库路径和Spire.Xls.free的依赖来导入
com.e-iceblue
http://repo.e-iceblue.cn/repository/maven-public/
e-iceblue
spire.xls.free
3.9.1
?
Java代码
import com.spire.xls.*;
import java.awt.*;
public class RadarChart {
public static void main(String[] args) {
//创建Excel工作簿
Workbook wb = new Workbook();
Worksheet sheet = wb.getWorksheets().get(0);
//添加表格数据
sheet.getRange().get("A1").setValue("部门");
sheet.getRange().get("A2").setValue("研发部");
sheet.getRange().get("A3").setValue("质检部");
sheet.getRange().get("A4").setValue("生产部");
sheet.getRange().get("A5").setValue("财务部");
sheet.getRange().get("A6").setValue("销售部");
sheet.getRange().get("B1").setValue("人数");
sheet.getRange().get("B2").setNumberValue(30);
sheet.getRange().get("B3").setNumberValue(10);
sheet.getRange().get("B4").setNumberValue(25);
sheet.getRange().get("B5").setNumberValue(28);
sheet.getRange().get("B6").setNumberValue(20);
sheet.getRange().get("C1").setValue("月支出(万元)");
sheet.getRange().get("C2").setNumberValue(60);
sheet.getRange().get("C3").setNumberValue(45);
sheet.getRange().get("C4").setNumberValue(50);
sheet.getRange().get("C5").setNumberValue(38);
sheet.getRange().get("C6").setNumberValue(65);
//格式化表格数据
sheet.getRange().get("A1:C1").getStyle().getFont().isBold(true);
sheet.getRange().get("A1:C6").getStyle().getFont().setSize(12);
sheet.getRange().get("A1:C1").setRowHeight(17);
sheet.getRange().get("A1:C6").setColumnWidth(16);
sheet.getRange().get("A1:C1").getStyle().setColor(new Color(176,224,230));
sheet.getRange().get("A2:C6").getStyle().setColor(new Color(255,239,213));
sheet.getRange().get("A1:C6").getStyle().setHorizontalAlignment(HorizontalAlignType.Center);
sheet.getRange().get("C2:C6").getStyle().setNumberFormat("\"¥\"#,##0");
//添加雷达图表到表格
Chart chart = sheet.getCharts().add(ExcelChartType.Radar);
chart.setLeftColumn(1);
chart.setTopRow(7);
chart.setRightColumn(8);
chart.setBottomRow(27);
chart.setDataRange(sheet.getRange().get("A1:C6"));
chart.setSeriesDataFromRange(false);
chart.setChartTitle("部门开支统计分析");
chart.getChartTitleArea().isBold();
chart.getChartTitleArea().setSize(12);
chart.getPlotArea().getFill().setVisible(false);
chart.getLegend().setPosition(LegendPositionType.Corner);
//保存文档
wb.saveToFile("result.xlsx", ExcelVersion.Version2013);
wb.dispose();
}
}
?
?