Skapa vattenfallsdiagram
Contents
[
Hide
]
Ett vattenfallsdiagram är en speciell typ av sjökort som normalt används för att visa hur startpositionen antingen ökar eller minskar. Microsoft Excel har många fördefinierade diagramtyper, inklusive kolumn, linje, cirkel, stapel, radar, etc. men vattenfallsdiagrammet är bortom de grundläggande graferna och kan skapas med hjälp av befintliga diagramtyper med lite eller mer anpassning.
Skapa ett vattenfallsdiagram
Aspose.Cells API: er gör det möjligt att skapa ett vattenfallsdiagram med hjälp av linjediagram. API gör det också möjligt att anpassa diagrammets utseende för att ge det formen av vattenfallet genom att ställa in de viktigaste egenskaperna för att forma sjökortet, det vill säga;Series.UpBars & Series.DownBarsegenskaper.
Nedan medföljande kodavsnitt visar användningen av Aspose.Cells for Java API för att skapa ett vattenfallsdiagram från grunden.
Java kod för att skapa vattenfallsdiagram
This file contains hidden or 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"); |