public List<XDDFChartData> getChartSeries() { List<XDDFChartData> series = new LinkedList<>(); CTPlotArea plotArea = getCTPlotArea(); Map<Long, XDDFChartAxis> categories = getCategoryAxes(); Map<Long, XDDFValueAxis> values = getValueAxes(); for (int i = 0; i < plotArea.sizeOfBarChartArray(); i++) { CTBarChart barChart = plotArea.getBarChartArray(i); series.add(new XDDFBarChartData(barChart, categories, values)); } for (int i = 0; i < plotArea.sizeOfLineChartArray(); i++) { CTLineChart lineChart = plotArea.getLineChartArray(i); series.add(new XDDFLineChartData(lineChart, categories, values)); } for (int i = 0; i < plotArea.sizeOfPieChartArray(); i++) { CTPieChart pieChart = plotArea.getPieChartArray(i); series.add(new XDDFPieChartData(pieChart)); } for (int i = 0; i < plotArea.sizeOfRadarChartArray(); i++) { CTRadarChart radarChart = plotArea.getRadarChartArray(i); series.add(new XDDFRadarChartData(radarChart, categories, values)); } for (int i = 0; i < plotArea.sizeOfScatterChartArray(); i++) { CTScatterChart scatterChart = plotArea.getScatterChartArray(i); series.add(new XDDFScatterChartData(scatterChart, categories, values)); } // TODO repeat above code for all kind of charts return series; }
public XDDFScatterChartData(CTScatterChart chart, Map<Long, XDDFChartAxis> categories, Map<Long, XDDFValueAxis> values) { this.chart = chart; for (CTScatterSer series : chart.getSerList()) { this.series.add(new Series(series, series.getXVal(), series.getYVal())); } defineAxes(categories, values); }
XDDFScatterChartData.Series series1 = (XDDFScatterChartData.Series) data.addSeries(xs, ys1); series1.setTitle("2x", null); // https://stackoverflow.com/questions/21855842 series1.setSmooth(false); // https://stackoverflow.com/questions/39636138 XDDFScatterChartData.Series series2 = (XDDFScatterChartData.Series) data.addSeries(xs, ys2); series2.setTitle("3x", null); chart.plot(data);
private void defineAxes(Map<Long, XDDFChartAxis> categories, Map<Long, XDDFValueAxis> values) { if (chart.sizeOfAxIdArray() == 0) { for (Long id : categories.keySet()) { chart.addNewAxId().setVal(id); } for (Long id : values.keySet()) { chart.addNewAxId().setVal(id); } } defineAxes(chart.getAxIdArray(), categories, values); }
public XDDFChartData createData(ChartTypes type, XDDFChartAxis category, XDDFValueAxis values) { Map<Long, XDDFChartAxis> categories = Collections.singletonMap(category.getId(), category); Map<Long, XDDFValueAxis> mapValues = Collections.singletonMap(values.getId(), values); final CTPlotArea plotArea = getCTPlotArea(); switch (type) { case BAR: return new XDDFBarChartData(plotArea.addNewBarChart(), categories, mapValues); case LINE: return new XDDFLineChartData(plotArea.addNewLineChart(), categories, mapValues); case PIE: return new XDDFPieChartData(plotArea.addNewPieChart()); case RADAR: return new XDDFRadarChartData(plotArea.addNewRadarChart(), categories, mapValues); case SCATTER: return new XDDFScatterChartData(plotArea.addNewScatterChart(), categories, mapValues); default: return null; } }
public XDDFScatterChartData(CTScatterChart chart, Map<Long, XDDFChartAxis> categories, Map<Long, XDDFValueAxis> values) { this.chart = chart; for (CTScatterSer series : chart.getSerList()) { this.series.add(new Series(series, series.getXVal(), series.getYVal())); } defineAxes(categories, values); }
public List<XDDFChartData> getChartSeries() { List<XDDFChartData> series = new LinkedList<>(); CTPlotArea plotArea = getCTPlotArea(); Map<Long, XDDFChartAxis> categories = getCategoryAxes(); Map<Long, XDDFValueAxis> values = getValueAxes(); for (int i = 0; i < plotArea.sizeOfBarChartArray(); i++) { CTBarChart barChart = plotArea.getBarChartArray(i); series.add(new XDDFBarChartData(barChart, categories, values)); } for (int i = 0; i < plotArea.sizeOfLineChartArray(); i++) { CTLineChart lineChart = plotArea.getLineChartArray(i); series.add(new XDDFLineChartData(lineChart, categories, values)); } for (int i = 0; i < plotArea.sizeOfPieChartArray(); i++) { CTPieChart pieChart = plotArea.getPieChartArray(i); series.add(new XDDFPieChartData(pieChart)); } for (int i = 0; i < plotArea.sizeOfRadarChartArray(); i++) { CTRadarChart radarChart = plotArea.getRadarChartArray(i); series.add(new XDDFRadarChartData(radarChart, categories, values)); } for (int i = 0; i < plotArea.sizeOfScatterChartArray(); i++) { CTScatterChart scatterChart = plotArea.getScatterChartArray(i); series.add(new XDDFScatterChartData(scatterChart, categories, values)); } // TODO repeat above code for all kind of charts return series; }
private void defineAxes(Map<Long, XDDFChartAxis> categories, Map<Long, XDDFValueAxis> values) { if (chart.sizeOfAxIdArray() == 0) { for (Long id : categories.keySet()) { chart.addNewAxId().setVal(id); } for (Long id : values.keySet()) { chart.addNewAxId().setVal(id); } } defineAxes(chart.getAxIdArray(), categories, values); }
public XDDFChartData createData(ChartTypes type, XDDFChartAxis category, XDDFValueAxis values) { Map<Long, XDDFChartAxis> categories = Collections.singletonMap(category.getId(), category); Map<Long, XDDFValueAxis> mapValues = Collections.singletonMap(values.getId(), values); final CTPlotArea plotArea = getCTPlotArea(); switch (type) { case BAR: return new XDDFBarChartData(plotArea.addNewBarChart(), categories, mapValues); case LINE: return new XDDFLineChartData(plotArea.addNewLineChart(), categories, mapValues); case PIE: return new XDDFPieChartData(plotArea.addNewPieChart()); case RADAR: return new XDDFRadarChartData(plotArea.addNewRadarChart(), categories, mapValues); case SCATTER: return new XDDFScatterChartData(plotArea.addNewScatterChart(), categories, mapValues); default: return null; } }