Datenpunkte von Treemap- und Sunburst-Diagramm
Unter anderem gibt es bei PowerPoint‑Diagrammen zwei „hierarchische“ Typen – Treemap‑ und Sunburst‑Diagramm (auch bekannt als Sunburst‑Grafik, Sunburst‑Diagramm, Radial‑Diagramm, Radial‑Grafik oder Multi‑Level‑Kreisdiagramm). Diese Diagramme zeigen hierarchische Daten, die als Baum strukturiert sind – von den Blättern bis zur Spitze des Astes. Blätter werden durch die Datenpunkte der Serie definiert, und jede nachfolgende verschachtelte Gruppierungsebene wird durch die entsprechende Kategorie definiert. Aspose.Slides for .NET ermöglicht das Formatieren von Datenpunkten von Sunburst‑Diagrammen und Treemaps in C#.
Hier ist ein Sunburst‑Diagramm, bei dem die Daten in der Spalte Series1 die Blattknoten definieren, während andere Spalten hierarchische Datenpunkte definieren:
Beginnen wir damit, ein neues Sunburst‑Diagramm zur Präsentation hinzuzufügen:
using (Presentation pres = new Presentation())
{
IChart chart = pres.Slides[0].Shapes.AddChart(ChartType.Sunburst, 100, 100, 450, 400);
// ...
}
Siehe auch
Wenn es erforderlich ist, Datenpunkte des Diagramms zu formatieren, sollten wir Folgendes verwenden:
IChartDataPointLevelsManager, IChartDataPointLevel Klassen und IChartDataPoint.DataPointLevels Eigenschaft bieten Zugriff zum Formatieren von Datenpunkten von Treemap‑ und Sunburst‑Diagrammen. IChartDataPointLevelsManager wird verwendet, um auf mehrstufige Kategorien zuzugreifen – er repräsentiert den Container von IChartDataPointLevel Objekten. Im Grunde ist er ein Wrapper für IChartCategoryLevelsManager mit den speziell für Datenpunkte hinzugefügten Eigenschaften. IChartDataPointLevel‑Klasse hat zwei Eigenschaften: Format und DataLabel , die Zugriff auf die entsprechenden Einstellungen bieten.
Datenpunktwert anzeigen
Wert des Datenpunkts “Leaf 4” anzeigen:
IChartDataPointCollection dataPoints = chart.ChartData.Series[0].DataPoints;
dataPoints[3].DataPointLevels[0].Label.DataLabelFormat.ShowValue = true;
Datenpunktbeschriftung und -farbe festlegen
Setze die Datenbeschriftung von “Branch 1” so, dass der Serienname (“Series1”) anstelle des Kategorienamens angezeigt wird. Anschließend setze die Textfarbe auf Gelb:
IDataLabel branch1Label = dataPoints[0].DataPointLevels[2].Label;
branch1Label.DataLabelFormat.ShowCategoryName = false;
branch1Label.DataLabelFormat.ShowSeriesName = true;
branch1Label.DataLabelFormat.TextFormat.PortionFormat.FillFormat.FillType = FillType.Solid;
branch1Label.DataLabelFormat.TextFormat.PortionFormat.FillFormat.SolidFillColor.Color = Color.Yellow;
Farbe des Datenpunktzweigs festlegen
Farbe des Zweigs “Stem 4” ändern:
using (Presentation pres = new Presentation())
{
IChart chart = pres.Slides[0].Shapes.AddChart(ChartType.Sunburst, 100, 100, 450, 400);
IChartDataPointCollection dataPoints = chart.ChartData.Series[0].DataPoints;
IChartDataPointLevel stem4branch = dataPoints[9].DataPointLevels[1];
stem4branch.Format.Fill.FillType = FillType.Solid;
stem4branch.Format.Fill.SolidFillColor.Color = Color.Red;
pres.Save("pres.pptx", SaveFormat.Pptx);
}
FAQ
Kann ich die Reihenfolge (Sortierung) der Segmente in Sunburst/Treemap ändern?
Nein. PowerPoint sortiert Segmente automatisch (in der Regel nach absteigenden Werten im Uhrzeigersinn). Aspose.Slides spiegelt dieses Verhalten wider: Sie können die Reihenfolge nicht direkt ändern; Sie erreichen dies durch Vorverarbeiten der Daten.
Wie wirkt sich das Präsentationsthema auf die Farben von Segmenten und Beschriftungen aus?
Diagrammfarben übernehmen das Thema/Palette der Präsentation, sofern Sie nicht explizit Füllungen/Schriften festlegen. Für konsistente Ergebnisse sollten Sie feste Füllungen und Textformatierungen auf den erforderlichen Ebenen sichern.
Wird der Export nach PDF/PNG benutzerdefinierte Zweigfarben und Beschriftungseinstellungen beibehalten?
Ja. Beim Exportieren der Präsentation werden Diagrammeinstellungen (Füllungen, Beschriftungen) in den Ausgabeformaten beibehalten, da Aspose.Slides das Diagramm mit den angewendeten Formatierungen rendert.
Kann ich die tatsächlichen Koordinaten einer Beschriftung/eines Elements berechnen, um ein benutzerdefiniertes Overlay über dem Diagramm zu platzieren?
Ja. Nach der Validierung des Diagrammlayouts stehen für Elemente ActualX/ActualY zur Verfügung (zum Beispiel für ein DataLabel), was bei der genauen Positionierung von Overlays hilft.