Inhaltsverzeichnis
Mit Pip installieren
pip install Spire.XLS
verwandte Links
Ein gruppiertes Säulendiagramm und ein gestapeltes Säulendiagramm sind zwei Varianten von Säulendiagrammen. Das gruppierte Säulendiagramm ermöglicht einen einfachen Vergleich der Werte verschiedener Kategorien, während das gestapelte Säulendiagramm sowohl die Gesamtsumme für jede Kategorie als auch den Anteil ihrer einzelnen Komponenten anzeigt. In diesem Artikel erfahren Sie, wie das geht Erstellen Sie in Python gruppierte oder gestapelte Säulendiagramme in Excel Verwendung von Spire.XLS for Python.
- Erstellen Sie in Python ein gruppiertes Säulendiagramm in Excel
- Erstellen Sie in Python ein gestapeltes Säulendiagramm in Excel
Installieren Sie Spire.XLS for Python
Dieses Szenario erfordert Spire.XLS for Python und plum-dispatch v1.7.4. Sie können mit dem folgenden pip-Befehl einfach in Ihrem VS-Code installiert werden.
pip install Spire.XLS
Wenn Sie sich bei der Installation nicht sicher sind, lesen Sie bitte dieses Tutorial: So installieren Sie Spire.XLS for Python in VS Code
Erstellen Sie in Python ein gruppiertes Säulendiagramm in Excel
Um einem Arbeitsblatt ein Diagramm hinzuzufügen, verwenden Sie die Methode Worksheet.Chart.Add(ExcelChartType chartType). Die ExcelChartType-Enumeration umfasst verschiedene in MS Excel vordefinierte Diagrammtypen. Im Folgenden finden Sie die Schritte zum Hinzufügen eines gruppierten Säulendiagramms in Excel mithilfe von Spire.XLS for Python.
- Erstellen Sie ein Workbook-Objekt.
- Rufen Sie ein bestimmtes Arbeitsblatt über die Eigenschaft Workbook.Worksheets[index] ab.
- Daten in die angegebenen Zellen schreiben.
- Fügen Sie dem Arbeitsblatt mit der Methode Worksheet.Chart.Add(ExcelChartType.ColumnClustered) ein gruppiertes Spaltenzeichen hinzu.
- Legen Sie die Diagrammdaten über die Chart.DataRange-Eigenschaft fest.
- Legen Sie die Position, den Titel und andere Attribute des Diagramms über die Eigenschaften unter dem Chart-Objekt fest.
- Speichern Sie die Arbeitsmappe mit der Methode Workbook.SaveToFile() in einer Excel-Datei.
- Python
from spire.xls import * from spire.xls.common import * # Create a Workbook object workbook = Workbook() # Get the first sheet sheet = workbook.Worksheets[0] # Set chart data sheet.Range["A1"].Value = "Product" sheet.Range["A2"].Value = "Diet Coke" sheet.Range["A3"].Value = "Mountain Dew" sheet.Range["A4"].Value = "Diet Pesi" sheet.Range["A5"].Value = "Cherry Coke" sheet.Range["B1"].Value = "Store A" sheet.Range["B2"].NumberValue = 35000 sheet.Range["B3"].NumberValue = 46000 sheet.Range["B4"].NumberValue = 28000 sheet.Range["B5"].NumberValue = 51000 sheet.Range["C1"].Value = "Store B" sheet.Range["C2"].NumberValue = 41000 sheet.Range["C3"].NumberValue = 32000 sheet.Range["C4"].NumberValue = 38000 sheet.Range["C5"].NumberValue = 40000 # Set cell style sheet.Range["A1:C1"].RowHeight = 15 sheet.Range["A1:C1"].Style.Color = Color.get_Black() sheet.Range["A1:C1"].Style.Font.Color = Color.get_White() sheet.Range["A1:C1"].Style.VerticalAlignment = VerticalAlignType.Center sheet.Range["A1:C1"].Style.HorizontalAlignment = HorizontalAlignType.Center sheet.AutoFitColumn(1) # Add a chart to the sheet chart = sheet.Charts.Add(ExcelChartType.ColumnClustered) # Set data range of chart chart.DataRange = sheet.Range["A1:C5"] chart.SeriesDataFromRange = False # Set position of the chart chart.LeftColumn = 5 chart.TopRow = 1 chart.RightColumn = 14 chart.BottomRow = 21 # Set chart title chart.ChartTitle = "Store Wise Soda Soft Drink Sales" chart.ChartTitleArea.IsBold = True chart.ChartTitleArea.Size = 12 # Set axis title chart.PrimaryCategoryAxis.Title = "Product" chart.PrimaryCategoryAxis.Font.IsBold = True chart.PrimaryCategoryAxis.TitleArea.IsBold = True chart.PrimaryValueAxis.Title = "Sales" chart.PrimaryValueAxis.HasMajorGridLines = False chart.PrimaryValueAxis.TitleArea.IsBold = True chart.PrimaryValueAxis.TitleArea.TextRotationAngle = 90 # Set series color, overlap, gap width and data labels series = chart.Series for i in range(len(series)): cs = series[i] cs.Format.Options.IsVaryColor = True cs.Format.Options.Overlap = -50 cs.Format.Options.GapWidth = 350 cs.DataPoints.DefaultDataPoint.DataLabels.HasValue = True # Set legend position chart.Legend.Position = LegendPositionType.Top # Save the document workbook.SaveToFile("ClusteredColumnChart.xlsx", ExcelVersion.Version2016)
Erstellen Sie in Python ein gestapeltes Säulendiagramm in Excel
Der Prozess zum Erstellen eines gestapelten Säulendiagramms ähnelt dem zum Erstellen eines gruppierten Säulendiagramms. Der einzige Unterschied besteht darin, dass Sie den Excel-Diagrammtyp von ColumnClustered in ColumnStacked ändern müssen.
- Erstellen Sie ein Workbook-Objekt.
- Rufen Sie ein bestimmtes Arbeitsblatt über die Eigenschaft Workbook.Worksheets[index] ab.
- Daten in die angegebenen Zellen schreiben.
- Fügen Sie dem Arbeitsblatt mit der Methode Worksheet.Chart.Add(ExcelChartType.ColumnStacked) ein gruppiertes Spaltenzeichen hinzu.
- Legen Sie die Diagrammdaten über die Chart.DataRange-Eigenschaft fest.
- Legen Sie die Position, den Titel und andere Attribute des Diagramms über die Eigenschaften unter dem Chart-Objekt fest.
- Speichern Sie die Arbeitsmappe mit der Methode Workbook.SaveToFile() in einer Excel-Datei.
- Python
from spire.xls import * from spire.xls.common import * # Create a Workbook object workbook = Workbook() # Get the first sheet sheet = workbook.Worksheets[0] # Set chart data sheet.Range["A1"].Value = "Product" sheet.Range["A2"].Value = "Diet Coke" sheet.Range["A3"].Value = "Mountain Dew" sheet.Range["A4"].Value = "Diet Pesi" sheet.Range["A5"].Value = "Cherry Coke" sheet.Range["B1"].Value = "Store A" sheet.Range["B2"].NumberValue = 35000 sheet.Range["B3"].NumberValue = 46000 sheet.Range["B4"].NumberValue = 28000 sheet.Range["B5"].NumberValue = 51000 sheet.Range["C1"].Value = "Store B" sheet.Range["C2"].NumberValue = 41000 sheet.Range["C3"].NumberValue = 32000 sheet.Range["C4"].NumberValue = 38000 sheet.Range["C5"].NumberValue = 40000 # Set cell style sheet.Range["A1:C1"].RowHeight = 15 sheet.Range["A1:C1"].Style.Color = Color.get_Black() sheet.Range["A1:C1"].Style.Font.Color = Color.get_White() sheet.Range["A1:C1"].Style.VerticalAlignment = VerticalAlignType.Center sheet.Range["A1:C1"].Style.HorizontalAlignment = HorizontalAlignType.Center sheet.AutoFitColumn(1) # Add a chart to the sheet chart = sheet.Charts.Add(ExcelChartType.ColumnStacked) # Set data range of chart chart.DataRange = sheet.Range["A1:C5"] chart.SeriesDataFromRange = False # Set position of the chart chart.LeftColumn = 5 chart.TopRow = 1 chart.RightColumn = 14 chart.BottomRow = 21 # Set chart title chart.ChartTitle = "Store Wise Soda Soft Drink Sales" chart.ChartTitleArea.IsBold = True chart.ChartTitleArea.Size = 12 # Set axis title chart.PrimaryCategoryAxis.Title = "Product" chart.PrimaryCategoryAxis.Font.IsBold = True chart.PrimaryCategoryAxis.TitleArea.IsBold = True chart.PrimaryValueAxis.Title = "Sales" chart.PrimaryValueAxis.HasMajorGridLines = False chart.PrimaryValueAxis.TitleArea.IsBold = True chart.PrimaryValueAxis.TitleArea.TextRotationAngle = 90 # Set series color, gap width and data labels series = chart.Series for i in range(len(series)): cs = series[i] cs.Format.Options.IsVaryColor = True cs.Format.Options.GapWidth = 270 cs.DataPoints.DefaultDataPoint.DataLabels.HasValue = True cs.DataPoints.DefaultDataPoint.DataLabels.Position = DataLabelPositionType.Inside # Set legend position chart.Legend.Position = LegendPositionType.Top # Save the document workbook.SaveToFile("StackedColumnChart.xlsx", ExcelVersion.Version2016)
Beantragen Sie eine temporäre Lizenz
Wenn Sie die Bewertungsmeldung aus den generierten Dokumenten entfernen oder die Funktionseinschränkungen beseitigen möchten, wenden Sie sich bitte an uns Fordern Sie eine 30-Tage-Testlizenz an für sich selbst.