Chart — Aspose.Cells FOSS for Python API Reference

aspose-cells-foss podržava ugrađivanje charts u worksheets. Charts su upravljani kroz ws.charts, a ChartCollection priloženo svakom Worksheet. Series data se dodaje kroz chart.n_series, an NSeries kolekcija.

Example: aspose.cells_foss

from aspose.cells_foss import ChartType

ChartType

ChartType je IntEnum koji identificira chart type.

ExampleExampleExample
LINE0Potpuno podržano za save.
BAR1Potpuno podržano za save.
PIE2Potpuno podržano za save.
AREA3Potpuno podržano za save.
BOX_WHISKER4Spremljeno koristeći chartEx format.
WATERFALL5Spremljeno koristeći chartEx format.
COMBO6Example NotImplementedError pri save.
SCATTER7Example NotImplementedError pri save.
STOCK8Potpuno podržano za spremanje.
SURFACE9Example NotImplementedError prilikom spremanja.
RADAR10Example NotImplementedError prilikom spremanja.
TREEMAP11Example NotImplementedError prilikom spremanja.
SUNBURST12Example NotImplementedError prilikom spremanja.
HISTOGRAM13Example NotImplementedError prilikom spremanja.
FUNNEL14Example NotImplementedError prilikom spremanja.
MAP15Example NotImplementedError prilikom spremanja.

Example

Chart objekti se ne konstruiraju izravno. Koristite ws.charts.add(...) ili tipizirane metode za praktičnost (add_bar(), add_line(), add_pie(), add_area()).

Example

ExampleExampleExampleExample
typeChartTypeExampleVrsta grafikona postavljena prilikom stvaranja.
title`strNone`Čitanje/Pisanje
category_data`strNone`Čitanje/Pisanje
n_seriesNSeriesExampleZbirka serija podataka.
show_legendboolČitanje/PisanjeTrue (zadano) za prikaz legende grafikona.
legend_positionstrČitanje/PisanjePozicija legende: 'right', 'left', 'top', 'bottom', 'top_right' (također prihvaća kratke oblike 'r', 'l', 't', 'b', 'tr').
smoothboolČitanje/PisanjeTrue za korištenje glatkih (splajn) linija na linijskim grafikonima.
groupingstrČitanje/PisanjeGrupiranje serija: 'standard', 'stacked', 'percentStacked', 'clustered'.
bar_directionstrČitanje/PisanjeExample BAR grafikoni: 'bar' (horizontalno) ili 'col' (vertikalno/kolona).
gap_widthintČitanje/PisanjeRazmak između grupa traka/kolona, 0–500 (zadano 150).
overlapintČitanje/PisanjePostotak preklapanja serija, -100 do 100 (zadano 0).
vary_colorsboolČitanje/PisanjeTrue za dodjeljivanje jedinstvene boje svakom podatkovnom točki.
first_slice_angleintČitanje/PisanjePočetni kut za prvi komad pita, 0–360 stupnjeva.
is_3dboolČitanje/PisanjeTrue za omogućavanje 3D prikaza.
view_3dChartView3DExample3D rotation and perspective settings.
axeslist[ChartAxis]ExamplePopis osi grafikona.
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 se pristupa kao ws.charts. Sadrži sve grafikone ugrađene u radni list.

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

Dodaje grafikon zadane vrste. Svi argumenti položaja su indeksirani od 0 (redak/kolona).

add_bar

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

Prečac za add(ChartType.BAR, ...).

add_line

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

Prečac za add(ChartType.LINE, ...).

add_pie

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

Prečac za add(ChartType.PIE, ...).

add_area

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

Prečac za add(ChartType.AREA, ...).

Svojstva i iteracija

ExampleExample
countBroj grafikona u zbirci (samo za čitanje).
__len__()Example count.
__iter__()Iterira kroz sve Chart objekte.
__getitem__(index)Vraća Chart na nultom indeksu index.

NSeries

NSeries se pristupa putem chart.n_series. Upravlja serijama podataka koje pripadaju grafikonu.

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

Dodaje seriju podataka. area je niz raspona poput "Sheet1!B1:B5". Postavi is_vertical=True kada su podaci raspoređeni u stupcima. chart_type nadjačava tip roditeljskog grafikona za ovu seriju (koristi se u kombiniranim grafikonima).

Svojstva i iteracija

ExampleExample
countBroj serija (samo za čitanje).
__len__()Example count.
__iter__()Iterira kroz sve ChartSeries objekte.
__getitem__(index)Vraća ChartSeries na nultom indeksu index.

ChartSeries

ChartSeries predstavlja pojedinačnu seriju podataka unutar grafikona. Dobiva se putem chart.n_series[index].

Example

ExampleExampleExample
valuesstrNiz raspona za podatke Y‑vrijednosti (npr., "Sheet1!B2:B6").
category_datastrNiz raspona za oznake kategorija/X‑osi za ovu seriju.
name`strNone`
chart_type`ChartTypeNone`
x_valuesstrNiz raspona za X‑vrijednosti raspršenog grafikona.
error_bars`ChartErrorBarsNone`
smoothboolTrue za korištenje glatkih linija za ovu seriju.

Example

add_error_bars

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

Dodaje trake grešaka ovoj seriji i vraća ChartErrorBars objekt.

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

ChartAxis

ChartAxis se pristupa putem chart.axes[index].

Example

ExampleExampleExample
title`strNone`
number_format`strNone`
minimum_scale`floatNone`
maximum_scale`floatNone`
major_unit`floatNone`
minor_unit`floatNone`
is_logarithmicboolTrue za korištenje logaritamske skale.
log_basefloatBaza logaritma kada is_logarithmic je True.
crossesstrGdje ova os presijeca okomitu os: 'autoZero', 'min', 'max'.
crosses_at`floatNone`
reverse_orderboolTrue za preokretanje smjera osi.
axis_typestrVrsta kategorije osi: 'catAx', 'valAx', 'dateAx', 'serAx'.
orientationstr'minMax' za normalni smjer, 'maxMin' za preokrenuti.

ChartView3D

ChartView3D se pristupa putem chart.view_3d. Primjenjuje se samo kada chart.is_3d je True.

Example

ExampleExampleExample
rotation_xintRotacija X-osi (elevacija), 0–90 stupnjeva.
rotation_yintRotacija Y-osi, 0–360 stupnjeva.
right_angle_axesboolTrue za korištenje osi pod pravim kutom (izometrijski prikaz).
perspectiveintDistorzija perspektive, 0–100. Ignorira se kada right_angle_axes je True.
height_percentintVisina grafikona kao postotak baze, 5–500.
depth_percentintDubina grafikona kao postotak baze, 20–2000.

ChartErrorBars

ChartErrorBars se pristupa putem series.error_bars. Stvori pomoću series.add_error_bars(...).

Example

ExampleExampleExample
directionstrSmjer trake pogreške: 'x', 'y', 'xy'.
bar_typestrKoje trake prikazati: 'both', 'minus', 'plus'.
val_typestrVrsta vrijednosti: 'fixedVal', 'percentage', 'stdDev', 'stdErr'.
valfloatFiksna ili postotna vrijednost koja se koristi kada val_type je 'fixedVal' ili 'percentage'.
no_end_capboolTrue za izostavljanje krajnje linije na trakama pogreške.
plus_formula`strNone`
minus_formula`strNone`
line_width`intNone`
line_color`strNone`

Example

Sljedeći primjer zapisuje mjesečne podatke o prihodima, stvara grupirani stupčasti grafikon s naslovom i dva podatkovna niza, te sprema radnu knjigu.

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")

Vidi također

 Hrvatski