Diagramm erstellen und verwalten
Erstellen von Diagrammen
Einfaches Erstellen eines Diagramms
Es ist einfach, mit Aspose.Cells für Python via .NET ein Diagramm zu erstellen, mit den folgenden Beispielcodes:
from aspose.cells import Workbook | |
from aspose.cells.charts import ChartType | |
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET | |
# The path to the documents directory. | |
dataDir = RunExamples.GetDataDir(".") | |
# Instantiating a Workbook object | |
workbook = Workbook() | |
# Obtaining the reference of the first worksheet | |
worksheet = workbook.worksheets[0] | |
# Adding sample values to cells | |
worksheet.cells.get("A2").put_value("Category1") | |
worksheet.cells.get("A3").put_value("Category2") | |
worksheet.cells.get("A4").put_value("Category3") | |
worksheet.cells.get("B1").put_value("Column1") | |
worksheet.cells.get("B2").put_value(4) | |
worksheet.cells.get("B3").put_value(20) | |
worksheet.cells.get("B4").put_value(50) | |
worksheet.cells.get("C1").put_value("Column2") | |
worksheet.cells.get("C2").put_value(50) | |
worksheet.cells.get("C3").put_value(100) | |
worksheet.cells.get("C4").put_value(150) | |
# Adding a chart to the worksheet | |
chartIndex = worksheet.charts.add(ChartType.COLUMN, 5, 0, 15, 5) | |
# Accessing the instance of the newly added chart | |
chart = worksheet.charts[chartIndex] | |
# Setting chart data source as the range "A1:C4" | |
chart.set_chart_data_range("A1:C4", True) | |
# Saving the Excel file | |
workbook.save(dataDir + "output.xls") |
Dinge, die beim Erstellen eines Diagramms zu beachten sind
Bevor Sie Diagramme erstellen, ist es wichtig, einige grundlegende Konzepte zu verstehen, die beim Erstellen von Diagrammen mit Aspose.Cells für Python via .NET hilfreich sind.
Diagrammobjekte
Aspose.Cells für Python via .NET stellt eine spezielle Gruppe von Klassen im namespace Aspose.Cells.Charts bereit, die zum Erstellen der von Aspose.Cells für Python via .NET unterstützten Diagramme verwendet werden. Diese Klassen dienen zur Erstellung von Diagramm-Objekten, die die Bausteine des Diagramms sind. Die Diagramm-Objekte sind unten aufgeführt:
- Serie, eine einzelne Datenreihe in einem Diagramm.
- Achse, die Achse eines Diagramms.
- Diagramm, ein einzelnes Excel-Diagramm.
- Diagrammbereich, der Diagrammbereich im Arbeitsblatt.
- Diagrammdaten Tabelle, eine Diagrammdatentabelle.
- Diagrammrahmen, das Rahmenobjekt in einem Diagramm.
- Diagrammpunkt, ein einzelner Punkt in einer Serie in einem Diagramm.
- Diagrammpunktsammlung, eine Sammlung, die alle Punkte in einer Serie enthält.
- Diagramme, eine Sammlung von Diagrammobjekten.
- Datenbeschriftungen, eine Sammlung aller Datenbeschriftungsobjekte für die angegebene Serie.
- Füllformat, Füllformat für eine Form.
- Boden, der Boden eines 3D-Diagramms.
- Legende, die Diagrammlegende.
- Linie, die Diagrammlinie.
- Seriensammlung, eine Sammlung von Serienobjekten.
- Achsenbeschriftungen, die Achsenbeschriftungen, die mit den Achsenmarkierungen auf einer Diagrammachse verbunden sind.
- Titel, der Titel eines Diagramms oder einer Achse.
- Trendlinie, eine Trendlinie in einem Diagramm.
- Trendliniensammlung, eine Sammlung aller Trendlinienobjekte für die angegebene Datenserie.
- Wände, die Wände eines 3D-Diagramms.
Verwendung von Diagrammobjekten
Wie oben erwähnt, sind alle Diagrammobjekte Instanzen ihrer jeweiligen Klassen und bieten spezifische Eigenschaften und Methoden zur Ausführung bestimmter Aufgaben. Verwenden Sie Diagrammobjekte, um Diagramme zu erstellen.
Fügen Sie mit der charts-Sammlung eine beliebige Art von Diagramm zu einem Arbeitsblatt hinzu. Jedes Element in der charts-Sammlung stellt ein Chart-Objekt dar. Ein Chart-Objekt umschließt alle anderen Diagrammobjekte, die erforderlich sind, um das Aussehen des Diagramms anzupassen. Im nächsten Abschnitt wird gezeigt, wie man einige grundlegende Diagrammobjekte verwendet, um ein einfaches Diagramm zu erstellen.
Diagramm mit Aspose.Cells für Python via .NET erstellen
Schritte:
- Fügen Sie einige Daten zu Arbeitsblattzellen mit der Cell-Methode des Objekts put_value hinzu. Dies wird als Datenquelle für das Diagramm verwendet.
- Fügen Sie ein Diagramm zu Arbeitsblatt hinzu, indem Sie die charts-Methode der Sammlung aufrufen, die im Worksheet-Objekt eingeschlossen ist.
- Geben Sie mit der ChartType-Aufzählung den Diagrammtyp an. Beispielsweise verwendet das untenstehende Beispiel den Wert ChartType.PYRAMID als Diagrammtyp.
- Greifen Sie über die Indexübergabe auf das neue Chart-Objekt aus der charts-Sammlung zu.
- Verwenden Sie eines der im Chart-Objekt eingeschlossenen Diagrammobjekte, um das Diagramm zu verwalten. Das untenstehende Beispiel verwendet das SeriesCollection-Diagrammobjekt, um die Datenquelle des Diagramms anzugeben.
Beim Hinzufügen von Quelldaten zum Diagramm kann die Datenquelle ein Zellenbereich (z. B. “A1:C3”) oder eine Sequenz von nicht zusammenhängenden Zellen (z. B. “A1, A3, A5”) oder eine Sequenz von Werten (z. B. “1,2,3”) sein.
Diese allgemeinen Schritte ermöglichen es Ihnen, beliebige Arten von Diagrammen zu erstellen. Verwenden Sie verschiedene Diagrammobjekte, um verschiedene Diagramme zu erstellen.
Es ist möglich, viele verschiedene Diagrammtypen mit Aspose.Cells für Python via .NET zu erstellen. Alle von Aspose.Cells für Python via .NET unterstützten Standarddiagramme sind in einer Enumeration namens Aspose.Cells.Charts.ChartType vordefiniert.
Die vordefinierten Diagrammtypen sind:
Diagrammtypen | Beschreibung |
---|---|
Column | Stellt gruppiertes Säulendiagramm dar |
ColumnStacked | Stellt gestapeltes Säulendiagramm dar |
Column100PercentStacked | Stellt zu 100 % gestapeltes Säulendiagramm dar |
Column3DClustered | Stellt 3D-gruppiertes Säulendiagramm dar |
Column3DStacked | Stellt 3D-gestapeltes Säulendiagramm dar |
Column3D100PercentStacked | Stellt 3D-100%-gestapeltes Säulendiagramm dar |
Column3D | Stellt 3D-Säulendiagramm dar |
Bar | Stellt gestapeltes Balkendiagramm dar |
BarStacked | Stellt gestapeltes Balkendiagramm dar |
Bar100PercentStacked | Stellt 100%-gestapeltes Balkendiagramm dar |
Bar3DClustered | Stellt 3D-gruppiertes Balkendiagramm dar |
Bar3DStacked | Stellt 3D-gestapeltes Balkendiagramm dar |
Bar3D100PercentStacked | Stellt 3D-100%-gestapeltes Balkendiagramm dar |
Line | Stellt Liniendiagramm dar |
LineStacked | Stellt gestapeltes Liniendiagramm dar |
Line100PercentStacked | Stellt 100%-gestapeltes Liniendiagramm dar |
LineWithDataMarkers | Stellt Liniendiagramm mit Datenmarkierungen dar |
LineStackedWithDataMarkers | Stellt gestapeltes Liniendiagramm mit Datenmarkierungen dar |
Line100PercentStackedWithDataMarkers | Stellt 100%-gestapeltes Liniendiagramm mit Datenmarkierungen dar |
Line3D | Stellt 3D-Liniendiagramm dar |
Pie | Stellt Tortendiagramm dar |
Pie3D | Stellt 3D-Tortendiagramm dar |
PiePie | Stellt Tortendiagramm von Tortendiagramm dar |
PieExploded | Stellt explodiertes Tortendiagramm dar |
Pie3DExploded | Stellt ein 3D-Sprengkuchendiagramm dar |
PieBar | Stellt Balken eines Kuchendiagramms dar |
Scatter | Stellt ein Scatter-Diagramm dar |
ScatterConnectedByCurvesWithDataMarker | Stellt ein Scatter-Diagramm dar, das durch Kurven verbunden ist, mit Datenmarkierungen |
ScatterConnectedByCurvesWithoutDataMarker | Stellt ein Scatter-Diagramm dar, das durch Kurven verbunden ist, ohne Datenmarkierungen |
ScatterConnectedByLinesWithDataMarker | Stellt ein Scatter-Diagramm dar, das durch Linien verbunden ist, mit Datenmarkierungen |
ScatterConnectedByLinesWithoutDataMarker | Stellt ein Scatter-Diagramm dar, das durch Linien verbunden ist, ohne Datenmarkierungen |
Area | Stellt ein Flächendiagramm dar |
AreaStacked | Stellt ein gestapeltes Flächendiagramm dar |
Area100PercentStacked | Stellt ein 100 % gestapeltes Flächendiagramm dar |
Area3D | Stellt ein 3D-Flächendiagramm dar |
Area3DStacked | Stellt ein 3D-gestapeltes Flächendiagramm dar |
Area3D100PercentStacked | Stellt ein 3D-100 %-gestapeltes Flächendiagramm dar |
Doughnut | Stellt ein Doughnut-Diagramm dar |
DoughnutExploded | Stellt ein explodiertes Doughnut-Diagramm dar |
Radar | Stellt ein Radar-Diagramm dar |
RadarWithDataMarkers | Stellt ein Radar-Diagramm mit Datenmarkierungen dar |
RadarFilled | Stellt ein gefülltes Radar-Diagramm dar |
Surface3D | Stellt ein 3D-Oberflächendiagramm dar |
SurfaceWireframe3D | Stellt ein drahtgerahmtes 3D-Oberflächendiagramm dar |
SurfaceContour | Stellt Konturdiagramm dar |
SurfaceContourWireframe | Stellt Drahtgitter-Konturdiagramm dar |
Bubble | Stellt Blasendiagramm dar |
Bubble3D | Stellt 3D-Blasendiagramm dar |
Cylinder | Stellt Zylinderdiagramm dar |
CylinderStacked | Stellt gestapeltes Zylinderdiagramm dar |
Cylinder100PercentStacked | Stellt 100 % gestapeltes Zylinderdiagramm dar |
CylindericalBar | Stellt zylindrisches Balkendiagramm dar |
CylindericalBarStacked | Stellt gestapeltes zylindrisches Balkendiagramm dar |
CylindericalBar100PercentStacked | Stellt 100 % gestapeltes zylindrisches Balkendiagramm dar |
CylindericalColumn3D | Stellt 3D-Säulendiagramm dar |
Cone | Stellt Kegeldiagramm dar |
ConeStacked | Stellt gestapeltes Kegeldiagramm dar |
Cone100PercentStacked | Stellt 100 % gestapeltes Kegeldiagramm dar |
ConicalBar | Stellt konisches Balkendiagramm dar |
ConicalBarStacked | Stellt gestapeltes konisches Balkendiagramm dar |
ConicalBar100PercentStacked | Stellt 100 % gestapeltes konisches Balkendiagramm dar |
ConicalColumn3D | Stellt 3D-konisches Säulendiagramm dar |
Pyramid | Stellt Pyramiden-Diagramm dar |
PyramidStacked | Stellt gestapeltes Pyramiden-Diagramm dar |
Pyramid100PercentStacked | Stellt 100% gestapeltes Pyramidendiagramm dar |
PyramidBar | Stellt Pyramidensäulendiagramm dar |
PyramidBarStacked | Stellt gestapeltes Pyramidensäulendiagramm dar |
PyramidBar100PercentStacked | Stellt 100% gestapeltes Pyramidensäulendiagramm dar |
PyramidColumn3D | Stellt 3D-Pyramiden-Säulendiagramm dar |
Wenn Sie einen Zellbereich als Datenquelle zuweisen, können Sie den Bereich nur von oben links nach unten rechts festlegen. Zum Beispiel ist “A1:C3” gültig, während “C3:A1” ungültig ist.
|
Pyramiden-Diagramm
Wenn der Beispielcode ausgeführt wird, wird ein Pyramiden-Diagramm dem Arbeitsblatt hinzugefügt.
from aspose.cells import Workbook | |
from aspose.cells.charts import ChartType | |
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET | |
# The path to the documents directory. | |
dataDir = RunExamples.GetDataDir(".") | |
# Instantiating a Workbook object | |
workbook = Workbook() | |
# Adding a new worksheet to the Excel object | |
sheetIndex = workbook.worksheets.add() | |
# Obtaining the reference of the newly added worksheet by passing its sheet index | |
worksheet = workbook.worksheets[sheetIndex] | |
# Adding sample values to cells | |
worksheet.cells.get("A1").put_value(50) | |
worksheet.cells.get("A2").put_value(100) | |
worksheet.cells.get("A3").put_value(150) | |
worksheet.cells.get("B1").put_value(4) | |
worksheet.cells.get("B2").put_value(20) | |
worksheet.cells.get("B3").put_value(50) | |
# Adding a chart to the worksheet | |
chartIndex = worksheet.charts.add(ChartType.PYRAMID, 5, 0, 15, 5) | |
# Accessing the instance of the newly added chart | |
chart = worksheet.charts[chartIndex] | |
# Adding SeriesCollection (chart data source) to the chart ranging from "A1" cell to "B3" | |
chart.n_series.add("A1:B3", True) | |
# Saving the Excel file | |
workbook.save(dataDir + "output.xls") |
Linien-Diagramm
Im obigen Beispiel wird durch einfaches Ändern von ChartType in Line ein Liniendiagramm erstellt. Der vollständige Quellcode wird unten bereitgestellt. Wenn der Code ausgeführt wird, wird dem Arbeitsblatt ein Liniendiagramm hinzugefügt.
from aspose.cells import Workbook | |
from aspose.cells.charts import ChartType | |
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET | |
# The path to the documents directory. | |
dataDir = RunExamples.GetDataDir(".") | |
# Instantiating a Workbook object | |
workbook = Workbook() | |
# Adding a new worksheet to the Excel object | |
sheetIndex = workbook.worksheets.add() | |
# Obtaining the reference of the newly added worksheet by passing its sheet index | |
worksheet = workbook.worksheets[sheetIndex] | |
# Adding sample values to cells | |
worksheet.cells.get("A1").put_value(50) | |
worksheet.cells.get("A2").put_value(100) | |
worksheet.cells.get("A3").put_value(150) | |
worksheet.cells.get("B1").put_value(4) | |
worksheet.cells.get("B2").put_value(20) | |
worksheet.cells.get("B3").put_value(50) | |
# Adding a chart to the worksheet | |
chartIndex = worksheet.charts.add(ChartType.LINE, 5, 0, 15, 5) | |
# Accessing the instance of the newly added chart | |
chart = worksheet.charts[chartIndex] | |
# Adding SeriesCollection (chart data source) to the chart ranging from "A1" cell to "B3" | |
chart.n_series.add("A1:B3", True) | |
# Saving the Excel file | |
workbook.save(dataDir + "output.xls") |
Bubble-Diagramm
Um ein Bubble-Diagramm zu erstellen, muss ChartType auf ChartType.BUBBLE gesetzt und einige zusätzliche Eigenschaften wie BubbleSizes, Values & XValues entsprechend festgelegt werden. Nach Ausführung des folgenden Codes wird dem Arbeitsblatt ein Bubble-Diagramm hinzugefügt.
Liniendiagramm mit Datenmarkierungen
Um ein Liniendiagramm mit Datenmarkierungen zu erstellen, muss ChartType auf ChartType.LineWithDataMarkers gesetzt und einige zusätzliche Eigenschaften wie Hintergrundbereich, Series Markers, Values & XValues entsprechend festgelegt werden. Nach Ausführung des folgenden Codes wird dem Arbeitsblatt ein Liniendiagramm mit Datenmarkierungen hinzugefügt.
from aspose.cells import SaveFormat, Workbook | |
from aspose.cells.charts import ChartType, FormattingType | |
from aspose.pydrawing import Color | |
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET | |
# Instantiate a workbook | |
workbook = Workbook() | |
# Access first worksheet | |
worksheet = workbook.worksheets[0] | |
# Set columns title | |
worksheet.cells.get(0, 0).value = "X" | |
worksheet.cells.get(0, 1).value = "Y" | |
# Create random data and save in the cells | |
for i in range(1, 21): | |
worksheet.cells.get(i, 0).value = i | |
worksheet.cells.get(i, 1).value = 0.8 | |
for i in range(21, 41): | |
worksheet.cells.get(i, 0).value = i - 20 | |
worksheet.cells.get(i, 1).value = 0.9 | |
# Add a chart to the worksheet | |
idx = worksheet.charts.add(ChartType.LINE_WITH_DATA_MARKERS, 1, 3, 20, 20) | |
# Access the newly created chart | |
chart = worksheet.charts[idx] | |
# Set chart style | |
chart.style = 3 | |
# Set autoscaling value to true | |
chart.auto_scaling = True | |
# Set foreground color white | |
chart.plot_area.area.foreground_color = Color.white | |
# Set Properties of chart title | |
chart.title.text = "Sample Chart" | |
# Set chart type | |
chart.type = ChartType.LINE_WITH_DATA_MARKERS | |
# Set Properties of categoryaxis title | |
chart.category_axis.title.text = "Units" | |
# Set Properties of nseries | |
s2_idx = chart.n_series.add("A2: A2", True) | |
s3_idx = chart.n_series.add("A22: A22", True) | |
# Set IsColorVaried to true for varied points color | |
chart.n_series.is_color_varied = True | |
# Set properties of background area and series markers | |
chart.n_series[s2_idx].area.formatting = FormattingType.CUSTOM | |
chart.n_series[s2_idx].marker.area.foreground_color = Color.yellow | |
chart.n_series[s2_idx].marker.border.is_visible = False | |
# Set X and Y values of series chart | |
chart.n_series[s2_idx].x_values = "A2: A21" | |
chart.n_series[s2_idx].values = "B2: B21" | |
# Set properties of background area and series markers | |
chart.n_series[s3_idx].area.formatting = FormattingType.CUSTOM | |
chart.n_series[s3_idx].marker.area.foreground_color = Color.green | |
chart.n_series[s3_idx].marker.border.is_visible = False | |
# Set X and Y values of series chart | |
chart.n_series[s3_idx].x_values = "A22: A41" | |
chart.n_series[s3_idx].values = "B22: B41" | |
# Save the workbook | |
workbook.save(outputDir + r"LineWithDataMarkerChart.xlsx", SaveFormat.XLSX) |
Erweiterte Themen
- Excel 2016 Diagramme lesen und bearbeiten
- Achsen von Excel-Diagrammen verwalten
- Diagrammaussehen festlegen
- Diagrammtypen
- Diagramme anpassen
- Datenquelle für das Diagramm festlegen
- Datenbeschriftungen von Excel-Diagrammen verwalten
- Diagramm durch Verarbeitung von Smart Markern generieren
- Arbeitsblatt des Diagramms erhalten
- Legende von Excel-Diagrammen verwalten
- Position Size und Gestaltung von Diagrammen bearbeiten
- Erstellen eines Tortendiagramms mit Führungslinien
- Formen in Diagrammen
- Titel von Excel-Diagrammen verwalten
- Diagrammrendering
- Gleichungstext der Trendlinie des Diagramms abrufen