Diagramm-Datenmarker
Contents
[
Hide
]
Diagramm-Markeroptionen festlegen
Die Marker können auf Datenpunkten von Diagrammen innerhalb bestimmter Serien festgelegt werden. Um die Diagramm-Markeroptionen festzulegen, befolgen Sie bitte die folgenden Schritte:
- Instanziieren Sie die Klasse Presentation.
- 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 folgenden Beispiel haben wir die Diagramm-Markeroptionen auf Datenpunktebene festgelegt.
# Erstellen einer leeren Präsentation
$pres = new Presentation();
try {
# Zugriff auf die erste Folie
$slide = $pres->getSlides()->get_Item(0);
# Erstellen des Standarddiagramms
$chart = $slide->getShapes()->addChart(ChartType::LineWithMarkers, 0, 0, 400, 400);
# Abrufen des Index des Arbeitsblatts für die Standarddiagrammdaten
$defaultWorksheetIndex = 0;
# Abrufen des Arbeitsblatts für die Diagrammdaten
$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, "Serie 1"), $chart->getType());
# Bild 1 laden
$imgx1 = $pres->getImages()->addImage(new Java("java.io.FileInputStream", new Java("java.io.File", "Desert.jpg")));
# Bild 2 laden
$imgx2 = $pres->getImages()->addImage(new Java("java.io.FileInputStream", new Java("java.io.File", "Tulips.jpg")));
# Nehmen Sie die erste Diagrammserie
$series = $chart->getChartData()->getSeries()->get_Item(0);
# Neuen Punkt (1:3) hinzufügen.
$point = $series->getDataPoints()->addDataPointForLineSeries($fact->getCell($defaultWorksheetIndex, 1, 1, 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, 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, 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, 4.5));
$point->getMarker()->getFormat()->getFill()->setFillType(FillType::Picture);
$point->getMarker()->getFormat()->getFill()->getPictureFillFormat()->getPicture()->setImage($imgx2);
# Ändern des Diagrammserienmarkierungen
$series->getMarker()->setSize(15);
# Präsentation mit Diagramm speichern
$pres->save("ScatterChart.pptx", SaveFormat::Pptx);
} catch (JavaException $e) {
} finally {
if (!java_is_null($pres)) {
$pres->dispose();
}
}