We are happy to announce the release of Spire.XLS for Java 5.3.1. This version supports creating Waterfall Chart, Pareto Chart, Histogram Chart, BoxAndWhisker Chart, TreeMap Chart, SunBurst Chart, and Funnel Chart. Also, it enhances the conversions from Excel to PDF and Excel to Image. In addition, it fixes some known issues such as the obtained signature information is not correct. More details are listed below.
Here is a list of changes made in this release
Category | ID | Description |
New feature | - | Supports creating the Waterfall Chart.
Workbookworkbook=newWorkbook(); workbook.loadFromFile("input.xlsx"); Worksheetsheet=workbook.getWorksheets().get(0); ChartofficeChart=sheet.getCharts().add(); //Setcharttypeaswaterfall officeChart.setChartType(ExcelChartType.WaterFall); //Setdatarangetothechartfromtheworksheet officeChart.setDataRange(sheet.getRange().get("A2:B8")); //Datapointsettingsastotalinchart officeChart.getSeries().get(0).getDataPoints().get(3).setAsTotal(true); officeChart.getSeries().get(0).getDataPoints().get(6).setAsTotal(true); //Showingtheconnectorlinesbetweendatapoints officeChart.getSeries().get(0).getFormat().showConnectorLines(true); //Setthecharttitle officeChart.setChartTitle("CompanyProfit(inUSD)"); //Formattingdatalabelandlegendoption officeChart.getSeries().get(0).getDataPoints().getDefaultDataPoint().getDataLabels().hasValue(true); officeChart.getSeries().get(0).getDataPoints().getDefaultDataPoint().getDataLabels().setSize(8); officeChart.getLegend().setPosition(LegendPositionType.Right); workbook.saveToFile("output.xlsx",FileFormat.Version2016); |
New feature | - | Supports creating the Pareto Chart.
Workbookworkbook=newWorkbook(); workbook.loadFromFile("input.xlsx"); Worksheetsheet=workbook.getWorksheets().get(0); ChartofficeChart=sheet.getCharts().add(); //SetcharttypeasPareto officeChart.setChartType(ExcelChartType.Pareto); //Setdatarangeintheworksheet officeChart.setDataRange(sheet.getRange().get("A2:B8")); //Setcategoryvaluesasbinvalues officeChart.getPrimaryCategoryAxis().isBinningByCategory(true); officeChart.getPrimaryCategoryAxis().setOverflowBinValue(5); officeChart.getPrimaryCategoryAxis().setUnderflowBinValue(1);; //FormattingParetoline officeChart.getSeries().get(0).getParetoLineFormat().getLineProperties().setColor(Color.blue); //Gapwidthsettings officeChart.getSeries().get(0).getDataFormat().getOptions().setGapWidth(6); //Setthecharttitle officeChart.setChartTitle("Expenses"); //Hidingthelegend officeChart.hasLegend(false); workbook.saveToFile("output.xlsx",FileFormat.Version2016); |
New feature | - | Supports creating the Histogram Chart.
Workbookworkbook=newWorkbook(); workbook.loadFromFile("input.xlsx"); Worksheetsheet=workbook.getWorksheets().get(0); ChartofficeChart=sheet.getCharts().add(); //Setcharttypeashistogram officeChart.setChartType(ExcelChartType.Histogram); //Setdatarangeintheworksheet officeChart.setDataRange(sheet.getRange().get("A1:A15")); //Categoryaxisbinsettings officeChart.getPrimaryCategoryAxis().setBinWidth(8); //Gapwidthsettings officeChart.getSeries().get(0).getDataFormat().getOptions().setGapWidth(6); //Setthecharttitleandaxistitle officeChart.setChartTitle("HeightData"); officeChart.getPrimaryValueAxis().setTitle("Numberofstudents"); officeChart.getPrimaryCategoryAxis().setTitle("Height"); //Hidingthelegend officeChart.hasLegend(false); workbook.saveToFile("output.xlsx",FileFormat.Version2016); |
New feature | - | Supports creating the BoxAndWhisker Chart.
Workbookworkbook=newWorkbook(); workbook.loadFromFile("input.xlsx"); Worksheetsheet=workbook.getWorksheets().get(0); ChartofficeChart=sheet.getCharts().add(); //Setthecharttitle officeChart.setChartTitle("YearlyVehicleSales"); //SetcharttypeasBoxandWhisker officeChart.setChartType(ExcelChartType.BoxAndWhisker); //Setdatarangeintheworksheet officeChart.setDataRange(sheet.getRange().get("A1:E17")); //BoxandWhiskersettingsonfirstseries ChartSerieseriesA=officeChart.getSeries().get(0); seriesA.getDataFormat().showInnerPoints(false); seriesA.getDataFormat().showConnectorLines(true); seriesA.getDataFormat().showMeanMarkers(true); seriesA.getDataFormat().showMeanLine(false); seriesA.getDataFormat().setQuartileCalculationType(ExcelQuartileCalculation.ExclusiveMedian); //BoxandWhiskersettingsonsecondseries ChartSerieseriesB=officeChart.getSeries().get(1); seriesB.getDataFormat().showInnerPoints(false); seriesB.getDataFormat().showConnectorLines(true); seriesB.getDataFormat().showMeanMarkers(true); seriesB.getDataFormat().showMeanLine(false); seriesB.getDataFormat().setQuartileCalculationType(ExcelQuartileCalculation.InclusiveMedian); //BoxandWhiskersettingsonthirdseries ChartSerieseriesC=officeChart.getSeries().get(2); seriesC.getDataFormat().showInnerPoints(false); seriesC.getDataFormat().showConnectorLines(true); seriesC.getDataFormat().showMeanMarkers(true); seriesC.getDataFormat().showMeanLine(false); seriesC.getDataFormat().setQuartileCalculationType(ExcelQuartileCalculation.ExclusiveMedian); workbook.saveToFile("output.xlsx",FileFormat.Version2016); |
New feature | - | Supports creating the TreeMap Chart.
Workbookworkbook=newWorkbook(); workbook.loadFromFile("input.xlsx"); Worksheetsheet=workbook.getWorksheets().get(0); ChartofficeChart=sheet.getCharts().add(); //SetcharttypeasTreeMap officeChart.setChartType(ExcelChartType.TreeMap); //Setdatarangeintheworksheet officeChart.setDataRange(sheet.getRange().get("A1:C11")); //Setthecharttitle officeChart.setChartTitle("Areabycountries"); //SettheTreemaplabeloption officeChart.getSeries().get(0).getDataFormat().setTreeMapLabelOption(ExcelTreeMapLabelOption.Banner); //Formattingdatalabels officeChart.getSeries().get(0).getDataPoints().getDefaultDataPoint().getDataLabels().setSize(8); workbook.saveToFile("output.xlsx",FileFormat.Version2016); |
New feature | - | Supports creating the SunBurst Chart.
Workbookworkbook=newWorkbook(); workbook.loadFromFile("input.xlsx"); Worksheetsheet=workbook.getWorksheets().get(0); ChartofficeChart=sheet.getCharts().add(); //SetcharttypeasSunburst officeChart.setChartType(ExcelChartType.SunBurst); //Setdatarangeintheworksheet officeChart.setDataRange(sheet.getRange().get("A1:D16")); //Setthecharttitle officeChart.setChartTitle("Salesbyannual"); //Formattingdatalabels officeChart.getSeries().get(0).getDataPoints().getDefaultDataPoint().getDataLabels().setSize(8); //Hidingthelegend officeChart.hasLegend(false); workbook.saveToFile("output.xlsx",FileFormat.Version2016); |
New feature | - | Supports creating the Funnel Chart.
Workbook workbook = new Workbook(); workbook.loadFromFile("input.xlsx"); Worksheet sheet = workbook.getWorksheets().get(0); Chart officeChart = sheet.getCharts().add(); //Set chart type as Funnel officeChart.setChartType(ExcelChartType.Funnel); //Set data range in the worksheet officeChart.setDataRange(sheet.getRange().get("A1:B6")); //Set the chart title officeChart.setChartTitle("Funnel"); //Formatting the legend and data label option officeChart.hasLegend(false); officeChart.getSeries().get(0).getDataPoints().getDefaultDataPoint().getDataLabels().hasValue(true); officeChart.getSeries().get(0).getDataPoints().getDefaultDataPoint().getDataLabels().setSize(8); workbook.saveToFile("output.xlsx", FileFormat.Version2016); |
Bug | SPIREXLS-3443 SPIREXLS-3575 SPIREXLS-3620 |
Fixes the issue that the content was incorrect after converting Excel to PDF. |
Bug | SPIREXLS-3612 | Fixes the issue that the content was incorrect after converting Excel to image. |
Bug | SPIREXLS-3642 | Fixes the issue that the obtained signature information were not correct. |
Bug | SPIREXLS-3653 | Fixes the issue that the application threw "OutOfMemoryError" when saving an excel file. |
Bug | SPIREXLS-3664 | Fixes the issue that the obtained formula values were incorrect. |
Click the link to download Spire.XLS for Java 5.3.1: