ウォーターフォールチャートの作成
Contents
[
Hide
]
ウォーターフォールチャートは、通常、出発位置が増加または減少する方法を示すために使用される特別なタイプのチャートです。Microsoft Excelには、カラム、折れ線、円、棒、レーダーなどの事前定義済みのチャートタイプが多数ありますが、ウォーターフォールチャートは基本的なグラフを超えたものであり、既存のチャートタイプを使用して少しのカスタマイズまたはより多くのカスタマイズで作成できます。
ウォーターフォールチャートの作成
Aspose.Cells APIを使用すると、ラインチャートを利用してウォーターフォールチャートを作成することができます。このAPIはまた、チャートの外観をカスタマイズして、ウォーターフォールの形にすることができます。これは、チャートを形作るための最も重要なプロパティを設定することによって行われます。それは、Series.UpBarsおよびSeries.DownBarsのプロパティです。
以下のコードスニペットは、Aspose.Cells for Java APIを使用してゼロからウォーターフォールチャートを作成する方法を示しています。
ウォーターフォールチャートの作成のためのJavaコード
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
// The path to the documents directory. | |
String dataDir = Utils.getDataDir(CreateWaterfallChart.class); | |
// Create an instance of Workbook | |
Workbook workbook = new Workbook(); | |
// Retrieve the first Worksheet in Workbook | |
Worksheet worksheet = workbook.getWorksheets().get(0); | |
// Retrieve the Cells of the first Worksheet | |
Cells cells = worksheet.getCells(); | |
// Input some data which chart will use as source | |
cells.get("A1").putValue("Previous Year"); | |
cells.get("A2").putValue("January"); | |
cells.get("A3").putValue("March"); | |
cells.get("A4").putValue("August"); | |
cells.get("A5").putValue("October"); | |
cells.get("A6").putValue("Current Year"); | |
cells.get("B1").putValue(8.5); | |
cells.get("B2").putValue(1.5); | |
cells.get("B3").putValue(7.5); | |
cells.get("B4").putValue(7.5); | |
cells.get("B5").putValue(8.5); | |
cells.get("B6").putValue(3.5); | |
cells.get("C1").putValue(1.5); | |
cells.get("C2").putValue(4.5); | |
cells.get("C3").putValue(3.5); | |
cells.get("C4").putValue(9.5); | |
cells.get("C5").putValue(7.5); | |
cells.get("C6").putValue(9.5); | |
// Add a Chart of type Waterfall in same worksheet as of data | |
int idx = worksheet.getCharts().add(ChartType.WATERFALL, 4, 4, 25, 13); | |
// Reterieve the Chart object | |
Chart chart = worksheet.getCharts().get(idx); | |
// Add Series | |
chart.getNSeries().add("$B$1:$C$6", true); | |
// Add Category Data | |
chart.getNSeries().setCategoryData("$A$1:$A$6"); | |
// Series has Up Down Bars | |
chart.getNSeries().get(0).setHasUpDownBars(true); | |
// Set the colors of Up and Down Bars | |
chart.getNSeries().get(0).getUpBars().getArea().setForegroundColor(Color.getGreen()); | |
chart.getNSeries().get(0).getDownBars().getArea().setForegroundColor(Color.getRed()); | |
// Make both Series Lines invisible | |
chart.getNSeries().get(0).getBorder().setVisible(false); | |
chart.getNSeries().get(1).getBorder().setVisible(false); | |
// Set the Plot Area Formatting Automatic | |
chart.getPlotArea().getArea().setFormatting(FormattingType.AUTOMATIC); | |
// Delete the Legend | |
chart.getLegend().getLegendEntries().get(0).setDeleted(true); | |
chart.getLegend().getLegendEntries().get(1).setDeleted(true); | |
// Save the workbook | |
workbook.save(dataDir + "output.xlsx"); |