Come creare un grafico Combo

Possibili Scenari di Utilizzo

I grafici Combo in Excel ti permettono di usufruire di questa opzione poiché puoi facilmente combinare due o più tipi di grafico per rendere i tuoi dati comprensibili. I grafici Combo sono utili quando i tuoi dati contengono molteplici tipologie di valori, inclusi prezzo e volume. Inoltre, i grafici Combo sono fattibili quando i numeri dei tuoi dati cambiano ampiamente da serie a serie. Prendendo il seguente set di dati come esempio, possiamo osservare che questi dati sono piuttosto simili ai dati citati in VHCL. Se vogliamo visualizzare series0, che corrisponde a “Ricavo totale,” come un grafico a Linee, come dovremmo procedere?

todo:image_alt_text

Grafico Combo

Dopo aver eseguito il codice qui sotto, vedrai il Grafico Combo come mostrato di seguito.

todo:image_alt_text

Codice di Esempio

Il codice di esempio seguente carica il [file Excel di esempio] (combo.xlsx) e genera il [file Excel di output] (out.xlsx).

Workbook workbook = new Workbook("combo.xlsx");
Worksheet worksheet = workbook.getWorksheets().get(0);
int i = worksheet.getCharts().add(ChartType.STOCK_VOLUME_HIGH_LOW_CLOSE,15, 0, 35, 12);
Chart chart = worksheet.getCharts().get(i);
chart.setShowLegend(true);
chart.getTitle().setText("Combo Chart");
chart.getTitle().setVisible(true);
chart.getLegend().setPosition(LegendPositionType.BOTTOM);
chart.setChartDataRange("A1:E12",true);
chart.getNSeries().setCategoryData("A2:A12");
for(int j = 0;j<chart.getNSeries().getCount();j++)
{
switch (j) {
case 1:
chart.getNSeries().get(j).getMarker().setMarkerStyle(ChartMarkerType.CIRCLE);
chart.getNSeries().get(j).getMarker().setMarkerSize(15);
chart.getNSeries().get(j).getMarker().getArea().setFormatting(FormattingType.CUSTOM);
chart.getNSeries().get(j).getMarker().getArea().setForegroundColor(com.aspose.cells.Color.getPink());
chart.getNSeries().get(j).getBorder().setVisible(false);
break;
case 2:
chart.getNSeries().get(j).getMarker().setMarkerStyle(ChartMarkerType.DASH);
chart.getNSeries().get(j).getMarker().setMarkerSize(15);
chart.getNSeries().get(j).getMarker().getArea().setFormatting(FormattingType.CUSTOM);
chart.getNSeries().get(j).getMarker().getArea().setForegroundColor(com.aspose.cells.Color.getOrange());
chart.getNSeries().get(j).getBorder().setVisible(false);
break;
case 3:
chart.getNSeries().get(j).getMarker().setMarkerStyle(ChartMarkerType.SQUARE);
chart.getNSeries().get(j).getMarker().setMarkerSize(15);
chart.getNSeries().get(j).getMarker().getArea().setFormatting(FormattingType.CUSTOM);
chart.getNSeries().get(j).getMarker().getArea().setForegroundColor(com.aspose.cells.Color.getLightBlue());
chart.getNSeries().get(j).getBorder().setVisible(false);
break;
}
}
chart.getNSeries().get(0).setType(ChartType.LINE);
chart.getPlotArea().getArea().setFormatting(FormattingType.NONE);
workbook.save("out.xlsx");