Chart — Aspose.Cells FOSS for Python API Reference

aspose-cells-foss ondersteunt het insluiten van grafieken in werkbladen. Grafieken worden beheerd via ws.charts, een ChartCollection bijgevoegd bij elk Worksheet. Series data wordt toegevoegd via chart.n_series, een NSeries collectie.

Example: aspose.cells_foss

from aspose.cells_foss import ChartType

ChartType

ChartType is een IntEnum die het grafiektype identificeert.

ExampleExampleExample
LINE0Volledig ondersteund voor opslaan.
BAR1Volledig ondersteund voor opslaan.
PIE2Volledig ondersteund voor opslaan.
AREA3Volledig ondersteund voor opslaan.
BOX_WHISKER4Opgeslagen met chartEx-formaat.
WATERFALL5Opgeslagen met chartEx-formaat.
COMBO6Example NotImplementedError bij opslaan.
SCATTER7Example NotImplementedError bij opslaan.
STOCK8Volledig ondersteund voor opslaan.
SURFACE9Example NotImplementedError bij opslaan.
RADAR10Example NotImplementedError bij opslaan.
TREEMAP11Example NotImplementedError bij opslaan.
SUNBURST12Example NotImplementedError bij opslaan.
HISTOGRAM13Example NotImplementedError bij opslaan.
FUNNEL14Example NotImplementedError bij opslaan.
MAP15Example NotImplementedError bij opslaan.

Example

Chart objecten worden niet direct geconstrueerd. Gebruik ws.charts.add(...) of de getypeerde gemaksmethoden (add_bar(), add_line(), add_pie(), add_area()).

Example

ExampleExampleExampleExample
typeChartTypeExampleGrafiektype ingesteld bij creatie.
title`strNone`Lezen/Schrijven
category_data`strNone`Lezen/Schrijven
n_seriesNSeriesExampleCollectie van gegevensreeksen.
show_legendboolLezen/SchrijvenTrue (standaard) om de grafieklegenda weer te geven.
legend_positionstrLezen/SchrijvenLegenda plaatsing: 'right', 'left', 'top', 'bottom', 'top_right' (accepteert ook korte vormen 'r', 'l', 't', 'b', 'tr').
smoothboolLezen/SchrijvenTrue om gladde (spline) lijnen op lijndiagrammen te gebruiken.
groupingstrLezen/SchrijvenSeriesgroepering: 'standard', 'stacked', 'percentStacked', 'clustered'.
bar_directionstrLezen/SchrijvenExample BAR grafieken: 'bar' (horizontaal) of 'col' (verticaal/kolom).
gap_widthintLezen/SchrijvenTussenruimte tussen balk-/kolomclusters, 0–500 (standaard 150).
overlapintLezen/SchrijvenOverlappercentage van series, -100 tot 100 (standaard 0).
vary_colorsboolLezen/SchrijvenTrue om elke gegevenspunt een eigen kleur toe te wijzen.
first_slice_angleintLezen/SchrijvenStarthoek voor het eerste taartpunt, 0–360 graden.
is_3dboolLezen/SchrijvenTrue om 3D-rendering in te schakelen.
view_3dChartView3DExample3D rotation and perspective settings.
axeslist[ChartAxis]ExampleLijst van grafiekassen.
upper_left_rowintExample0-based row index of the chart’s top-left anchor cell.
upper_left_columnintExample0-based column index of the chart’s top-left anchor cell.
lower_right_rowintExample0-based row index of the chart’s bottom-right anchor cell.
lower_right_columnintExample0-based column index of the chart’s bottom-right anchor cell.

ChartCollection

ChartCollection wordt benaderd als ws.charts. Het bevat alle grafieken die in een werkblad zijn ingebed.

Example

add

ws.charts.add(
    chart_type: ChartType,
    upper_left_row: int,
    upper_left_column: int,
    lower_right_row: int,
    lower_right_column: int
) -> Chart

Voegt een grafiek van het opgegeven type toe. Alle positie‑argumenten zijn 0‑gebaseerde rij/kolom‑indexen.

add_bar

ws.charts.add_bar(upper_left_row, upper_left_column, lower_right_row, lower_right_column) -> Chart

Snelkoppeling voor add(ChartType.BAR, ...).

add_line

ws.charts.add_line(upper_left_row, upper_left_column, lower_right_row, lower_right_column) -> Chart

Snelkoppeling voor add(ChartType.LINE, ...).

add_pie

ws.charts.add_pie(upper_left_row, upper_left_column, lower_right_row, lower_right_column) -> Chart

Snelkoppeling voor add(ChartType.PIE, ...).

add_area

ws.charts.add_area(upper_left_row, upper_left_column, lower_right_row, lower_right_column) -> Chart

Snelkoppeling voor add(ChartType.AREA, ...).

Eigenschappen en iteratie

ExampleExample
countAantal grafieken in de collectie (alleen-lezen).
__len__()Example count.
__iter__()Itereert over alle Chart objecten.
__getitem__(index)Retourneert de Chart op nulgebaseerde index.

NSeries

NSeries is toegankelijk via chart.n_series. Het beheert de gegevensreeksen die bij een grafiek horen.

Example

add

chart.n_series.add(
    area: str,
    is_vertical: bool = False,
    category_data: str | None = None,
    name: str | None = None,
    chart_type: ChartType | None = None
) -> ChartSeries

Voegt een gegevensreeks toe. area is een bereikstring zoals "Sheet1!B1:B5". Stel is_vertical=True wanneer gegevens in kolommen zijn gerangschikt. chart_type overschrijft het bovenliggende grafiektype voor deze reeks (gebruikt in combinatiegrafieken).

Eigenschappen en iteratie

ExampleExample
countAantal reeksen (alleen-lezen).
__len__()Example count.
__iter__()Itereert over alle ChartSeries objecten.
__getitem__(index)Retourneert de ChartSeries bij nul‑gebaseerde index.

ChartSeries

ChartSeries vertegenwoordigt een enkele gegevensreeks binnen een diagram. Verkregen via chart.n_series[index].

Example

ExampleExampleExample
valuesstrBereik‑tekenreeks voor de Y‑waarde‑gegevens (bijv., "Sheet1!B2:B6").
category_datastrBereik‑tekenreeks voor de categorie‑/X‑as‑labels voor deze reeks.
name`strNone`
chart_type`ChartTypeNone`
x_valuesstrBereik‑tekenreeks voor de X‑waarden van een spreidingsdiagram.
error_bars`ChartErrorBarsNone`
smoothboolTrue om vloeiende lijnen voor deze reeks te gebruiken.

Example

add_error_bars

series.add_error_bars(
    direction='y',
    bar_type='both',
    val_type='fixedVal',
    val=1.0,
    no_end_cap=False
) -> ChartErrorBars

Voegt foutbalken toe aan deze reeks en retourneert de ChartErrorBars object.

ExampleExample
direction'x', 'y', 'xy'
bar_type'both', 'minus', 'plus'
val_type'fixedVal', 'percentage', 'stdDev', 'stdErr'

ChartAxis

ChartAxis is toegankelijk via chart.axes[index].

Example

ExampleExampleExample
title`strNone`
number_format`strNone`
minimum_scale`floatNone`
maximum_scale`floatNone`
major_unit`floatNone`
minor_unit`floatNone`
is_logarithmicboolTrue om een logaritmische schaal te gebruiken.
log_basefloatBasis van de logaritme wanneer is_logarithmic is True.
crossesstrWaar deze as de loodrechte as kruist: 'autoZero', 'min', 'max'.
crosses_at`floatNone`
reverse_orderboolTrue om de asrichting om te keren.
axis_typestrAscategorie type: 'catAx', 'valAx', 'dateAx', 'serAx'.
orientationstr'minMax' voor normale richting, 'maxMin' voor omgekeerd.

ChartView3D

ChartView3D is toegankelijk via chart.view_3d. Geldt alleen wanneer chart.is_3d is True.

Example

ExampleExampleExample
rotation_xintX-as rotatie (elevatie), 0–90 graden.
rotation_yintY-as rotatie, 0–360 graden.
right_angle_axesboolTrue om rechthoekige assen te gebruiken (isometrisch uitzicht).
perspectiveintPerspectiefvervorming, 0–100. Genegeerd wanneer right_angle_axes is True.
height_percentintGrafiekhoogte als een percentage van de basis, 5–500.
depth_percentintGrafiekdiepte als een percentage van de basis, 20–2000.

ChartErrorBars

ChartErrorBars is toegankelijk via series.error_bars. Maak met series.add_error_bars(...).

Example

ExampleExampleExample
directionstrFoutbalkrichting: 'x', 'y', 'xy'.
bar_typestrWelke balken weergeven: 'both', 'minus', 'plus'.
val_typestrWaardetype: 'fixedVal', 'percentage', 'stdDev', 'stdErr'.
valfloatVaste of percentagewaarde gebruikt wanneer val_type is 'fixedVal' of 'percentage'.
no_end_capboolTrue om de eindkaplijn op foutbalken weg te laten.
plus_formula`strNone`
minus_formula`strNone`
line_width`intNone`
line_color`strNone`

Example

Het volgende voorbeeld schrijft maandelijkse omzetgegevens, maakt een gegroepeerde staafgrafiek met een titel en twee gegevensreeksen, en slaat de werkmap op.

from aspose.cells_foss import Workbook, ChartType

wb = Workbook()
ws = wb.worksheets[0]
ws.name = "Revenue"

# Write headers and data
headers = ["Month", "Product A", "Product B"]
data = [
    ["Jan", 12000, 9500],
    ["Feb", 14500, 11000],
    ["Mar", 13200, 12800],
    ["Apr", 15800, 14100],
]
for col, h in enumerate(headers):
    ws.cells[0][col].put_value(h)
for row, row_data in enumerate(data, start=1):
    for col, val in enumerate(row_data):
        ws.cells[row][col].put_value(val)

# Add a bar chart covering rows 6-20, columns 0-6
chart = ws.charts.add_bar(6, 0, 20, 6)
chart.title = "Monthly Revenue by Product"
chart.bar_direction = "col"   # vertical (column chart)
chart.grouping = "clustered"

# Series: Product A and Product B
chart.n_series.add("Revenue!B2:B5", is_vertical=True, category_data="Revenue!A2:A5", name="Product A")
chart.n_series.add("Revenue!C2:C5", is_vertical=True, category_data="Revenue!A2:A5", name="Product B")

chart.show_legend = True
chart.legend_position = "bottom"

wb.save("revenue_chart.xlsx")

Zie ook

 Nederlands