Diagramm-Datenmarker in Präsentationen für Android verwalten
Diagramm-Marker-Optionen festlegen
Die Marker können für Datenpunkte innerhalb bestimmter Serien eines Diagramms festgelegt werden. Um Diagramm-Marker-Optionen zu setzen, gehen Sie bitte wie folgt vor:
- Instanziieren Sie die Presentation-Klasse.
- Erstellen Sie das Standarddiagramm.
- Setzen Sie das Bild.
- Nehmen Sie die erste Diagrammserie.
- Fügen Sie einen neuen Datenpunkt hinzu.
- Schreiben Sie die Präsentation auf die Festplatte.
Im nachstehenden Beispiel haben wir die Diagramm-Marker-Optionen auf Datenpunktebene festgelegt.
// Leere Präsentation erstellen
Presentation pres = new Presentation();
try {
// Erste Folie zugreifen
ISlide slide = pres.getSlides().get_Item(0);
// Standarddiagramm erstellen
IChart chart = slide.getShapes().addChart(ChartType.LineWithMarkers, 0, 0, 400, 400);
// Den Index des Standard-Chart-Datenarbeitsblatts abrufen
int defaultWorksheetIndex = 0;
// Das Diagrammdaten-Arbeitsblatt abrufen
IChartDataWorkbook fact = chart.getChartData().getChartDataWorkbook();
// Demo-Serie löschen
chart.getChartData().getSeries().clear();
// Neue Serie hinzufügen
chart.getChartData().getSeries().add(fact.getCell(defaultWorksheetIndex, 1, 1, "Series 1"), chart.getType());
// Bild 1 laden
IPPImage imgx1 = pres.getImages().addImage(new FileInputStream(new File("Desert.jpg")));
// Bild 2 laden
IPPImage imgx2 = pres.getImages().addImage(new FileInputStream(new File("Tulips.jpg")));
// Erste Diagrammserie übernehmen
IChartSeries series = chart.getChartData().getSeries().get_Item(0);
// Neuen Punkt (1:3) dort hinzufügen.
IChartDataPoint point = series.getDataPoints().addDataPointForLineSeries(fact.getCell(defaultWorksheetIndex, 1, 1, (double) 4.5));
point.getMarker().getFormat().getFill().setFillType(FillType.Picture);
point.getMarker().getFormat().getFill().getPictureFillFormat().getPicture().setImage(imgx1);
point = series.getDataPoints().addDataPointForLineSeries(fact.getCell(defaultWorksheetIndex, 2, 1, (double) 2.5));
point.getMarker().getFormat().getFill().setFillType(FillType.Picture);
point.getMarker().getFormat().getFill().getPictureFillFormat().getPicture().setImage(imgx2);
point = series.getDataPoints().addDataPointForLineSeries(fact.getCell(defaultWorksheetIndex, 3, 1, (double) 3.5));
point.getMarker().getFormat().getFill().setFillType(FillType.Picture);
point.getMarker().getFormat().getFill().getPictureFillFormat().getPicture().setImage(imgx1);
point = series.getDataPoints().addDataPointForLineSeries(fact.getCell(defaultWorksheetIndex, 4, 1, (double) 4.5));
point.getMarker().getFormat().getFill().setFillType(FillType.Picture);
point.getMarker().getFormat().getFill().getPictureFillFormat().getPicture().setImage(imgx2);
// Diagrammserien-Marker ändern
series.getMarker().setSize(15);
// Präsentation mit Diagramm speichern
pres.save("ScatterChart.pptx", SaveFormat.Pptx);
} catch (IOException e) {
} finally {
if (pres != null) pres.dispose();
}
FAQ
Welche Markerformen stehen standardmäßig zur Verfügung?
Standardformen sind verfügbar (Kreis, Quadrat, Raute, Dreieck usw.); die Liste wird durch die MarkerStyleType‑Klasse definiert. Wenn Sie eine nicht‑standardmäßige Form benötigen, verwenden Sie einen Marker mit Bildfüllung, um benutzerdefinierte Visuals zu emulieren.
Werden Marker beim Export eines Diagramms in ein Bild oder SVG erhalten?
Ja. Beim Rendern von Diagrammen in raster formats oder beim Speichern von shapes as SVG behalten Marker ihr Aussehen und ihre Einstellungen bei, einschließlich Größe, Füllung und Kontur.