Aggiunta di etichette personalizzate ai punti dati della serie del grafico

Aggiunta di etichette personalizzate ai punti dati della serie del grafico

Il codice seguente crea un grafico a dispersione con linee che collegano i marker dati e quindi aggiunge etichette personalizzate ai punti dati della serie del grafico. Ogni etichetta personalizzata mostra il nome della serie e il nome del punto. È possibile utilizzare qualsiasi altro testo al suo posto. Dopo l’esecuzione del codice, viene creato il file Excel seguente. Come puoi vedere all’interno del grafico, ogni punto dati ha un’etichetta personalizzata impostata.

todo:image_alt_text

// 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(AddCustomLabelsToDataPoints.class);
Workbook workbook = new Workbook(FileFormatType.XLSX);
Worksheet sheet = workbook.getWorksheets().get(0);
// Put data
sheet.getCells().get(0, 0).putValue(1);
sheet.getCells().get(0, 1).putValue(2);
sheet.getCells().get(0, 2).putValue(3);
sheet.getCells().get(1, 0).putValue(4);
sheet.getCells().get(1, 1).putValue(5);
sheet.getCells().get(1, 2).putValue(6);
sheet.getCells().get(2, 0).putValue(7);
sheet.getCells().get(2, 1).putValue(8);
sheet.getCells().get(2, 2).putValue(9);
// Generate the chart
int chartIndex = sheet.getCharts().add(ChartType.SCATTER_CONNECTED_BY_LINES_WITH_DATA_MARKER, 5, 1, 24, 10);
Chart chart = sheet.getCharts().get(chartIndex);
chart.getTitle().setText("Test");
chart.getCategoryAxis().getTitle().setText("X-Axis");
chart.getValueAxis().getTitle().setText("Y-Axis");
chart.getNSeries().setCategoryData("A1:C1");
// Insert series
chart.getNSeries().add("A2:C2", false);
Series series = chart.getNSeries().get(0);
int pointCount = series.getPoints().getCount();
for (int i = 0; i < pointCount; i++) {
ChartPoint pointIndex = series.getPoints().get(i);
pointIndex.getDataLabels().setText("Series 1" + "\n" + "Point " + i);
}
// Insert series
chart.getNSeries().add("A3:C3", false);
series = chart.getNSeries().get(1);
pointCount = series.getPoints().getCount();
for (int i = 0; i < pointCount; i++) {
ChartPoint pointIndex = series.getPoints().get(i);
pointIndex.getDataLabels().setText("Series 2" + "\n" + "Point " + i);
}
workbook.save(dataDir + "Test.xlsx", SaveFormat.XLSX);