Carl Smith
СОЗДАНИЕ ДИАГРАММЫ ВОДОПАДА В EXCEL НА JAVA
Диаграмма водопада, также называемая каскадной или мостовой диаграммой, является одной из наиболее наглядных диаграмм в Excel, которая может помочь вам понять, как на исходное значение влияет серия положительных и отрицательных значений. В этой статье вы узнаете, как программно создать диаграмму водопада с помощью Spire.XLS for Java.
Установите библиотеку
Spire.XLS for Java – это многофункциональный API, используемый для обработки файлов Excel в Java-приложениях. Ниже описаны два способа ее установки.
Метод 1: Скачайте и разархивируйте библиотеку, затем добавьте файл Spire.Xls.jar в ваш проект в качестве зависимости.
Метод 2: непосредственно добавьте зависимость jar в проект maven, добавив следующие конфигурации в pom.xml.
repositories>
<repository>
<id>com.e-iceblue</id>
<name>e-iceblue</name>
<url>https://repo.e-iceblue.com/nexus/content/groups/public/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>e-iceblue</groupId>
<artifactId>spire.xls</artifactId>
<version>13.3.6</version>
</dependency>
</dependencies>
Код примера
Чтобы создать диаграмму водопада в Excel, Spire.XLS for Java позволяет добавить диаграмму на рабочий лист с помощью метода Worksheet.getCharts().add(), а затем установить тип диаграммы как диаграмму водопада с помощью метода Chart.setChartType(ExcelChartType.WaterFall). Полный код примера показан ниже.
import com.spire.xls.*;
public class WaterfallChart {
public static void main(String []args){
//Создайте объект Workbook
Workbook workbook=new Workbook();
//Загрузите образец документа Excel
workbook.loadFromFile("test.xlsx");
//Получите первый рабочий лист
Worksheet sheet=workbook.getWorksheets().get(0);
//Добавьте на рабочий лист диаграмму водопада
Chart officeChart=sheet.getCharts().add();
officeChart.setChartType(ExcelChartType.WaterFall);
//Установите диапазон данных для графика
officeChart.setDataRange(sheet.getRange().get("A1:B5"));
//Установка итоговых значений для определенных точек данных на графике
officeChart.getSeries().get(0).getDataPoints().get(2).setAsTotal(true);
officeChart.getSeries().get(0).getDataPoints().get(4).setAsTotal(true);
//Показать соединительные линии между точками данных
officeChart.getSeries().get(0).getFormat().showConnectorLines(true);
//Установите положение графика
officeChart.setLeftColumn(1);
officeChart.setTopRow(7);
officeChart.setRightColumn(9);
officeChart.setBottomRow(26);
//Установите заголовок графика
officeChart.setChartTitle("Прибыль компании");
//Show data labels for data points
officeChart.getSeries().get(0).getDataPoints().getDefaultDataPoint().getDataLabels().hasValue(true);
officeChart.getSeries().get(0).getDataPoints().getDefaultDataPoint().getDataLabels().setSize(8);
//Установите положение легенды графика
officeChart.getLegend().setPosition(LegendPositionType.Top);
//Сохранить файл результата
workbook.saveToFile("WaterfallChart.xlsx",FileFormat.Version2016);
}
}