可以通过GcExcel来实现气泡图,GcExcel支持各种Excel图表,具体可以参考:
"图表类型 - GcExcel 中文文档Java版 | 服务端高性能表格组件 - 葡萄城" (https://link.segmentfault.com/?enc=A1l49SzGcDnybOxDFNxe3g%3D%3D.LPbeFW0cNIluC2qZPOLKRhapH7Fz2IIObgjucbA4pnWIOUicnN7uWpxSDT%2BRamt08mJFL%2B56KyFAsOsRsXouOUumazeUXCL2BdhAERC4LK3aOeBMWHlZZ7%2BRfms41%2BOJMtX2bjlYHFdGZ2jiy4coAVBqOHqrm45zDg64LNZElE0%3D)
生成气泡图的代码如下:
public void BubleCharts(){
// Create a new workbook
Workbook workbook = new Workbook();
IWorksheet worksheet = workbook.getWorksheets().get(0);
IShape shape = worksheet.getShapes().addChart(ChartType.Bubble, 250, 20, 360, 230);
worksheet.getRange("A1:C10").setValue(new Object[][]{
{"Blue", null, null},
{125, 750, 3},
{25, 625, 7},
{75, 875, 5},
{175, 625, 6},
{"Red", null, null},
{125, 500, 10},
{25, 250, 1},
{75, 125, 5},
{175, 250, 8},
});
shape.getChart().getSeriesCollection().add(worksheet.getRange("A1:C5"), RowCol.Columns);
shape.getChart().getSeriesCollection().add(worksheet.getRange("A6:C10"), RowCol.Columns);
shape.getChart().getChartTitle().setText("Bubble Chart");
// Save to an excel file
workbook.save("output/BubbleChart.xlsx");
}
最后结果是:
"image.png" (https://wmlx-new-image.oss-cn-shanghai.aliyuncs.com/images/20241029/b22dd6061b47c8f8dddef795cd00fd6f.png)