
Die Visualisierung von Aufgaben auf einer Zeitachse hilft, Projekte besser zu verwalten. In diesem Artikel erfahren Sie, wie Sie ein Gantt-Diagramm in Excel mit Python und Aspose.Cells for Python über .NET erstellen. Mit nur wenigen Zeilen Code können Sie einfache Aufgabendaten in eine dynamische und saubere visuelle Zeitachse umwandeln, die ideal für Berichte, Dashboards und Planungsdokumente ist. Lassen Sie uns Schritt für Schritt durch den Prozess gehen.
Dieser Artikel behandelt die folgenden Themen:
- Python Excel-Bibliothek für Gantt-Diagramme
- Gantt-Diagramm mit gestapelten Säulendiagrammen
- Create a Gantt Chart in Excel using Python
- Passen Sie das Gantt-Diagramm in Excel mit Python an
- Explore Free Resources
Python Excel-Bibliothek für Gantt-Diagramme
Aspose.Cells for Python via .NET ist eine leistungsstarke Bibliothek zum Arbeiten mit Excel Dateien in Python. Sie ermöglicht es Ihnen, Tabellenkalkulationen programmgesteuert zu erstellen, zu ändern und zu formatieren—einschließlich Diagrammen wie Gantt-Diagrammen.
Schlüsselfunktionen:
- Vollständige Kontrolle über Excel-Diagramme und Daten.
- Unterstützung für XLSX, XLS, CSV und PDF.
- Hohe Leistung mit großen Dateien.
- Reiche Diagramm-Anpassigungsoptionen.
Um loszulegen, installieren Sie bitte die Bibliothek mit:
pip install aspose-cells
Sie können es auch von den releases herunterladen.
Gantt-Diagramme mit gestapelten Balkendiagrammen
Excel bietet keinen integrierten Gantt-Diagrammtyp an, und Aspose.Cells ebenfalls nicht. Aber Sie können dennoch eines erstellen, indem Sie ein gestapeltes Balkendiagramm mit ein wenig Formatting verwenden. Dies ist eine gängige Technik, und Aspose.Cells unterstützt dies vollständig durch Code.
Was Sie mit Aspose.Cells tun können
Sie können ein Gantt-Diagramm in Excel ganz einfach automatisieren, indem Sie Folgendes tun:
- Geben Sie die Aufgabendaten ein (Aufgabenname, Startdatum und Dauer).
- Fügen Sie ein gestapeltes Balkendiagramm ein.
- Verwenden Sie eine Serie für den
Start-Offset
(unsichtbar) und eine andere für dieDauer
(sichtbar). - Formatieren Sie das Diagramm, damit es wie ein Gantt-Diagramm aussieht.
Dies gibt Ihnen eine professionell aussehende Zeitleiste, die Sie dynamisch erstellen können.
Sample Task Data
Hier ist eine Beispieltabelle, die wir verwenden werden:
Aufgabe | Startdatum | Dauer | Startverschiebung |
---|---|---|---|
Task 1 | 2025-04-01 | 3 | 0 |
Task 2 | 2025-04-03 | 6 | 2 |
Task 3 | 2025-04-08 | 10 | 7 |
Task 4 | 2025-04-18 | 3 | 17 |
Task 5 | 2025-04-21 | 5 | 20 |
Create a Gantt Chart in Excel using Python
Befolgen Sie diese Schritte, um ein Gantt-Diagramm in Excel mit Python und Aspose.Cells for Python über .NET zu erstellen:
- Laden Sie eine vorhandene Excel-Datendatei mit der
Workbook
Klasse. - Holen Sie sich das erste Arbeitsblatt mit
workbook.worksheets[0]
. - Fügen Sie ein gruppiertes Säulendiagramm hinzu, um ein Gantt-Diagramm-Layout hinzuzufügen.
- Fügen Sie zwei Datensätze hinzu: einen für die Offset und einen für die Dauer.
- Setze Aufgabenbezeichnungen als Kategorienetiketten.
- Passen Sie die Stile und Achseneinstellungen an, um das Diagramm zu formatieren.
- Speichern Sie die Datei mit der
workbook.save()
-Methode.
Hier ist ein Python-Code-Snippet, das all diese Schritte ausführt:
import aspose.cells as cells
from aspose.pydrawing import Color
# Laden Sie die Excel-Datei
workbook = cells.Workbook("sample-data.xlsx")
sheet = workbook.worksheets.get(0)
# Gantt-Diagramm hinzufügen
chart_index = sheet.charts.add(cells.charts.ChartType.BAR_STACKED, 7, 0, 30, 10)
chart = sheet.charts[chart_index]
chart.title.text = "Gantt Chart"
# Fügen Sie Offset und Dauer als Serie hinzu
chart.n_series.add("D2:D6", True) # Start Offset
chart.n_series.add("C2:C6", True) # Duration
# Setze Aufgabennamen als Kategorien
chart.n_series.category_data = "A2:A6"
# Machen Sie die Offset-Diagramme unsichtbar.
chart.n_series[0].area.formatting = cells.charts.FormattingType.NONE
# Style-Dauerbalken
chart.n_series[1].area.formatting = cells.charts.FormattingType.CUSTOM
chart.n_series[1].area.foreground_color = Color.steel_blue
chart.n_series[1].data_labels.show_value = True
# Achsen Einstellungen
chart.category_axis.is_plot_order_reversed = True
chart.category_axis.title.text = "Tasks"
chart.value_axis.title.text = "Days from Start"
chart.value_axis.major_grid_lines.is_visible = True
# Legend verstecken
chart.show_legend = False
# Diagramm größen (optional)
chart.chart_object.width = 700
chart.chart_object.height = 400
# Save the result
workbook.save("GanttChartResult.xlsx", cells.SaveFormat.XLSX)
Dies wird ein sauberes Gantt-Diagramm mit Ihren Aufgabendaten erzeugen.

Create a Gantt-Chart in Excel mit Python
Passen Sie das Gantt-Diagramm an
Sie können Ihr Gantt-Diagramm mit den folgenden verfügbaren Optionen anpassen:
Bar Farben
Stellen Sie eine einheitliche Farbe für die Dauerbalken ein:
chart.n_series[1].area.foreground_color = Color.steel_blue
Transparente Offsets
Machen Sie die versetzten (unsichtbaren) Balken vollständig transparent.
chart.n_series[0].area.formatting = cells.charts.FormattingType.NONE
Task Order
Die Y-Achse umkehren, um Aufgaben von oben nach unten anzuzeigen:
chart.category_axis.is_plot_order_reversed = True
Datenbeschriftungen
Dauer direkt auf jeder Taskleiste anzeigen:
chart.n_series[1].data_labels.show_value = True
Legend Control
Entfernen oder verschieben Sie die Diagrammlegende.
chart.show_legend = False
# Or reposition:
chart.legend.position = cells.charts.LegendPositionType.BOTTOM
Setzen Sie benutzerdefinierte Farbbalken
chart.n_series[1].points[0].area.foreground_color = Color.green
chart.n_series[1].points[1].area.foreground_color = Color.red
Ändern Sie die Größe des Diagramms.
chart.chart_object.width = 700
chart.chart_object.height = 400
Exportieren als PDF oder Bild
workbook.save("gantt_chart.pdf", cells.SaveFormat.PDF)
chart.to_image("chart.png")
Der folgende Python-Codeausschnitt wendet einige der oben genannten Anpassungen an:
import aspose.cells as cells
from aspose.pydrawing import Color
import datetime
# Arbeitsmappe und Arbeitsblatt initialisieren
workbook = cells.Workbook()
sheet = workbook.worksheets.get(0)
sheet.name = "Gantt Data"
# Projektstartdatum
project_start = datetime.date(2025, 4, 1)
# Headers
sheet.cells.get("A1").put_value("Task")
sheet.cells.get("B1").put_value("Start Date")
sheet.cells.get("C1").put_value("Duration (Days)")
sheet.cells.get("D1").put_value("Start Offset")
sheet.cells.get("E1").put_value("End Date")
# Aufgabendaten: [Aufgabenname, Startdatum, Dauer]
tasks = [
["Task 1", "2025-04-01", "3"],
["Task 2", "2025-04-03", "6"],
["Task 3", "2025-04-08", "10"],
["Task 4", "2025-04-18", "3"],
["Task 5", "2025-04-21", "5"]
]
# Füllen Sie die Daten in das Blatt ein.
for i, task in enumerate(tasks):
row = i + 2 # Start from row 2
sheet.cells.get(row, 0).put_value(task[0]) # Task Name
sheet.cells.get(row, 1).put_value(datetime.datetime.strptime(task[1], "%Y-%m-%d").date()) # Start Date
sheet.cells.get(row, 2).put_value(int(task[2])) # Duration
# Offset und Enddatum-Formeln
sheet.cells.get(row, 3).formula = f"=B{row + 1} - DATE(2025,4,1)" # Offset
sheet.cells.get(row, 4).formula = f"=B{row + 1} + C{row + 1}" # End Date
# Spalten automatisch anpassen
sheet.auto_fit_columns()
# Fügen Sie ein Gantt-Diagramm hinzu
chart_index = sheet.charts.add(cells.charts.ChartType.BAR_STACKED, 10, 0, 30, 10)
chart = sheet.charts[chart_index]
chart.title.text = "Project Gantt Chart"
# Datenreihe hinzufügen: Offset (unsichtbar), Dauer (sichtbar)
chart.n_series.add("D2:D6", True) # Offset
chart.n_series.add("C2:C6", True) # Duration
# Setze Aufgabenbezeichnungen als Kategorieetiketten
chart.n_series.category_data = "A2:A6"
# Machen Sie die Offset-Balken unsichtbar
chart.n_series[0].area.formatting = cells.charts.FormattingType.NONE
# Färbe jede Aufgabenleiste unterschiedlich ein.
duration_series = chart.n_series[1]
for i in range(duration_series.points.count):
red = 100 + i * 30
duration_series.points[i].area.foreground_color = Color.from_argb(255, red, 150)
# Datenbeschriftungen auf Dauerbalken anzeigen
duration_series.data_labels.show_value = True
# Achsenkonfiguration
chart.category_axis.title.text = "Tasks"
chart.category_axis.is_plot_order_reversed = True
chart.value_axis.title.text = "Days from Project Start"
chart.value_axis.major_grid_lines.is_visible = True
chart.value_axis.min_value = 0
chart.value_axis.major_unit = 5.0
# Legende ausblenden
chart.show_legend = False
# Diagramm zuschneiden
chart.chart_object.width = 700
chart.chart_object.height = 400
# Save output
workbook.save("CustomizedGanttChart.xlsx", cells.SaveFormat.XLSX)

Passen Sie das Gantt-Diagramm in Excel mit Python an
Holen Sie sich eine kostenlose Lizenz
Sie können eine kostenlose temporäre Lizenz anfordern, um die vollen Funktionen von Aspose.Cells ohne Einschränkungen oder Wasserzeichen zu erkunden.
Zusätzliche Ressourcen
Möchten Sie mehr erkunden? Die folgenden Links helfen Ihnen, tiefer in Aspose.Cells for Python über .NET einzutauchen. Egal, ob Sie nach detaillierten Anleitungen, API-Referenzen oder kostenlosen Tools suchen, diese Ressourcen haben alles für Sie.
Finale Worte
Ein Gantt-Diagramm in Excel mit Python zu erstellen, ist einfach und effektiv mit Aspose.Cells for Python über .NET. Es gibt Ihnen die vollständige Kontrolle über das Diagrammdesign und die Excel-Automatisierung. Probieren Sie es mit Ihren Projektdaten aus und sehen Sie den Unterschied.
Wenn Sie auf Fragen stoßen, zögern Sie bitte nicht, uns in unserem free support forum zu kontaktieren.