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.
// 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); |