use of org.apache.poi.xssf.usermodel.XSSFChart in project oc-explorer by devgateway.
the class TenderPercentagesExcelControllerTest method tendersWithLinkedProcurementPlanExcelChart.
@Test
public void tendersWithLinkedProcurementPlanExcelChart() throws Exception {
LangYearFilterPagingRequest filter = getLangYearFilterMockRequest();
tenderPercentagesExcelController.tendersWithLinkedProcurementPlanExcelChart(filter, mockHttpServletResponse);
final byte[] responseOutput = mockHttpServletResponse.getContentAsByteArray();
final Workbook workbook = new XSSFWorkbook(new ByteArrayInputStream(responseOutput));
Assert.assertNotNull(workbook);
final Sheet sheet = workbook.getSheet(ChartType.area.toString());
Assert.assertNotNull("check chart type, sheet name should be the same as the type", sheet);
final XSSFDrawing drawing = (XSSFDrawing) sheet.getDrawingPatriarch();
final List<XSSFChart> charts = drawing.getCharts();
Assert.assertEquals("number of charts", 1, charts.size());
final XSSFChart chart = charts.get(0);
Assert.assertEquals("chart title", translationService.getValue(filter.getLanguage(), "charts:percentWithTenders:title"), chart.getTitle().getString());
final List<? extends XSSFChartAxis> axis = chart.getAxis();
Assert.assertEquals("number of axis", 2, axis.size());
final CTChart ctChart = chart.getCTChart();
Assert.assertEquals("Check if we have 1 area chart", 1, ctChart.getPlotArea().getAreaChartArray().length);
}
use of org.apache.poi.xssf.usermodel.XSSFChart in project oc-explorer by devgateway.
the class XSSFAreaChartData method fillChart.
@Override
public void fillChart(final Chart chart, final ChartAxis... axis) {
if (!(chart instanceof XSSFChart)) {
throw new IllegalArgumentException("Chart must be instance of XSSFChart");
}
final XSSFChart xssfChart = (XSSFChart) chart;
final CTPlotArea plotArea = xssfChart.getCTChart().getPlotArea();
final CTAreaChart areChart = plotArea.addNewAreaChart();
areChart.addNewVaryColors().setVal(false);
xssfChart.setTitleText(this.title);
CTValAx[] ctValAx = plotArea.getValAxArray();
if (ctValAx.length != 0) {
ctValAx[0].addNewMajorGridlines().addNewSpPr().addNewSolidFill();
ctValAx[0].getCrossBetween().setVal(STCrossBetween.BETWEEN);
}
for (CustomChartSeries s : series) {
s.addToChart(areChart);
}
for (ChartAxis ax : axis) {
areChart.addNewAxId().setVal(ax.getId());
}
}
use of org.apache.poi.xssf.usermodel.XSSFChart in project oc-explorer by devgateway.
the class XSSFBubbleChartData method fillChart.
@Override
public void fillChart(final Chart chart, final ChartAxis... axis) {
if (!(chart instanceof XSSFChart)) {
throw new IllegalArgumentException("Chart must be instance of XSSFChart");
}
final XSSFChart xssfChart = (XSSFChart) chart;
final CTPlotArea plotArea = xssfChart.getCTChart().getPlotArea();
final CTBubbleChart bubbleChart = plotArea.addNewBubbleChart();
for (CustomChartSeries s : series) {
s.addToChart(bubbleChart);
}
for (ChartAxis ax : axis) {
bubbleChart.addNewAxId().setVal(ax.getId());
}
xssfChart.setTitleText(this.title);
}
use of org.apache.poi.xssf.usermodel.XSSFChart in project oc-explorer by devgateway.
the class XSSFLineChartData method fillChart.
@Override
public void fillChart(final Chart chart, final ChartAxis... axis) {
if (!(chart instanceof XSSFChart)) {
throw new IllegalArgumentException("Chart must be instance of XSSFChart");
}
final XSSFChart xssfChart = (XSSFChart) chart;
final CTPlotArea plotArea = xssfChart.getCTChart().getPlotArea();
final CTLineChart lineChart = plotArea.addNewLineChart();
lineChart.addNewVaryColors().setVal(false);
for (CustomChartSeries s : series) {
s.addToChart(lineChart);
}
for (ChartAxis ax : axis) {
lineChart.addNewAxId().setVal(ax.getId());
}
xssfChart.setTitleText(this.title);
// add grid lines
CTCatAx[] ctCatAx = plotArea.getCatAxArray();
if (ctCatAx.length != 0) {
ctCatAx[0].addNewMajorGridlines().addNewSpPr().addNewSolidFill();
}
CTValAx[] ctValAx = plotArea.getValAxArray();
if (ctValAx.length != 0) {
ctValAx[0].addNewMajorGridlines().addNewSpPr().addNewSolidFill();
}
}
use of org.apache.poi.xssf.usermodel.XSSFChart in project oc-explorer by devgateway.
the class XSSFScatterChartData method fillChart.
@Override
public void fillChart(final Chart chart, final ChartAxis... axis) {
if (!(chart instanceof XSSFChart)) {
throw new IllegalArgumentException("Chart must be instance of XSSFChart");
}
final XSSFChart xssfChart = (XSSFChart) chart;
final CTPlotArea plotArea = xssfChart.getCTChart().getPlotArea();
final CTScatterChart scatterChart = plotArea.addNewScatterChart();
addStyle(scatterChart);
for (CustomChartSeries s : series) {
s.addToChart(scatterChart);
}
for (ChartAxis ax : axis) {
scatterChart.addNewAxId().setVal(ax.getId());
}
xssfChart.setTitleText(this.title);
// add grid lines
CTCatAx[] ctCatAx = plotArea.getCatAxArray();
if (ctCatAx.length != 0) {
ctCatAx[0].addNewMajorGridlines().addNewSpPr().addNewSolidFill();
}
CTValAx[] ctValAx = plotArea.getValAxArray();
if (ctValAx.length != 0) {
ctValAx[0].addNewMajorGridlines().addNewSpPr().addNewSolidFill();
}
}
Aggregations