Introduction

Aspose.Cells FOSS supports creating charts directly inside Excel .xlsx fichiers provenant de Python. La bibliothèque fournit des add_*() méthodes pour 16 types de graphiques (Line, Bar, Pie, Area, Scatter, Waterfall, Combo, Stock, Surface, Radar, Treemap, Sunburst, Histogram, Funnel, Box & Whisker, et Map). Parmi ceux‑ci, Line, Bar, Pie, Area et Stock bénéficient d’une prise en charge complète de la sérialisation XML et s’enregistrent correctement dans .xlsx. Les types restants peuvent être créés en mémoire mais il se peut qu’ils ne conservent pas toute la mise en forme lors de l’enregistrement.

Les graphiques sont ajoutés via worksheet.charts.add_*() des méthodes qui acceptent une boîte englobante définie par (upper_left_row, upper_left_column, lower_right_row, lower_right_column) en tant qu’indices zéro‑basés. Les données de séries sont ajoutées via chart.n_series.add().

Création d’un graphique à barres

from aspose.cells_foss import Workbook

workbook = Workbook()
worksheet = workbook.worksheets[0]

# Write data
months = ["Jan", "Feb", "Mar", "Apr", "May", "Jun"]
sales  = [100, 150, 120, 180, 200, 170]
for i, (m, s) in enumerate(zip(months, sales), 2):
    worksheet.cells[f"A{i}"].value = m
    worksheet.cells[f"B{i}"].value = s

# Add a bar chart anchored to rows 0-20, columns 4-12
chart = worksheet.charts.add_bar(0, 4, 20, 12)
chart.title = "Monthly Sales"
chart.n_series.add("B2:B7", category_data="A2:A7", name="Sales")

workbook.save("bar_chart.xlsx")

Création d’un graphique linéaire

from aspose.cells_foss import Workbook

workbook = Workbook()
worksheet = workbook.worksheets[0]

months = ["Jan", "Feb", "Mar", "Apr", "May", "Jun"]
sales  = [100, 150, 120, 180, 200, 170]
for i, (m, s) in enumerate(zip(months, sales), 2):
    worksheet.cells[f"A{i}"].value = m
    worksheet.cells[f"B{i}"].value = s

# Line chart anchored to rows 0-20, columns 4-12
chart = worksheet.charts.add_line(0, 4, 20, 12)
chart.title = "Monthly Sales"
chart.n_series.add("B2:B7", category_data="A2:A7", name="Sales")

workbook.save("line_chart.xlsx")

Points clés

  • 16 chart creation methods available; Line, Bar, Pie, Area et Stock bénéficient d’une prise en charge complète de l’enregistrement — les autres types peuvent être créés mais il se peut qu’ils ne sérialisent pas toute la mise en forme vers .xlsx
  • Les graphiques sont positionnés à l’aide d’une boîte englobante d’indices de lignes et de colonnes zéro‑based
  • Les données de séries et les libellés de catégorie sont spécifiés à l’aide de chaînes de plage de type Excel ("B2:B7")
  • Aucun Microsoft Excel, aucune automatisation COM, et aucune dépendance native ne sont requis

Voir aussi