// Create a new workbook Workbook workbook = new Workbook(); IWorksheet worksheet = workbook.getWorksheets().get(0); worksheet.getRange("A1:B8").setValue(new Object[][]{ {"Starting Amt", 130}, {"Measurement 1", 25}, {"Measurement 2", -75}, {"Subtotal", 80}, {"Measurement 3", 45}, {"Measurement 4", -65}, {"Measurement 5", 80}, {"Total", 140} }); worksheet.getRange("A:A").getColumns().autoFit(); //Create a waterfall chart. IShape shape = worksheet.getShapes().addChart(ChartType.Waterfall, 300, 20, 300, 250); shape.getChart().getSeriesCollection().add(worksheet.getRange("A1:B8")); //Set subtotal&total points. IPoints points = shape.getChart().getSeriesCollection().get(0).getPoints(); points.get(3).setIsTotal(true); points.get(7).setIsTotal(true); //Connector lines are not shown. ISeries series = shape.getChart().getSeriesCollection().get(0); series.setShowConnectorLines(false); //Modify the fill color of the first legend entry. ILegendEntries legendEntries = shape.getChart().getLegend().getLegendEntries(); legendEntries.get(0).getFormat().getFill().getColor().setObjectThemeColor(ThemeColor.Accent6); // Save to an excel file workbook.save("AddWaterfallChart.xlsx");
// Create a new workbook var workbook = Workbook() val worksheet = workbook.worksheets.get(0) worksheet.getRange("A1:B8").setValue(arrayOf(arrayOf("Starting Amt", 130), arrayOf("Measurement 1", 25), arrayOf("Measurement 2", -75), arrayOf("Subtotal", 80), arrayOf("Measurement 3", 45), arrayOf("Measurement 4", -65), arrayOf("Measurement 5", 80), arrayOf("Total", 140))) worksheet.getRange("A:A").columns.autoFit() //Create a waterfall chart. val shape = worksheet.shapes.addChart(ChartType.Waterfall, 300.0, 20.0, 300.0, 250.0) shape.chart.seriesCollection.add(worksheet.getRange("A1:B8")) //Set subtotal&total points. val points = shape.chart.seriesCollection.get(0).points points.get(3).isTotal = true points.get(7).isTotal = true //Connector lines are not shown. val series = shape.chart.seriesCollection.get(0) series.showConnectorLines = false //Modify the fill color of the first legend entry. val legendEntries = shape.chart.legend.legendEntries legendEntries.get(0).format.fill.color.objectThemeColor = ThemeColor.Accent6 // Save to an excel file workbook.save("AddWaterfallChart.xlsx")