Chart — Aspose.Cells FOSS for Python API Reference

aspose-cells-foss podržava ugrađivanje grafikona u radne listove. Grafikoni se upravljaju putem ws.charts, a ChartCollection prikačen na svaki Worksheet. Podaci serije se dodaju putem chart.n_series, jedan NSeries kolekcija.

: aspose.cells_foss

from aspose.cells_foss import ChartType

ChartType

ChartType je jedan IntEnum koji identifikuje tip grafikona.

LINE0Potpuno podržano za čuvanje.
BAR1Potpuno podržano za čuvanje.
PIE2Potpuno podržano za čuvanje.
AREA3Potpuno podržano za čuvanje.
BOX_WHISKER4Sačuvano u chartEx formatu.
WATERFALL5Sačuvano u chartEx formatu.
COMBO6
NotImplementedError prilikom čuvanja.
SCATTER7
NotImplementedError prilikom čuvanja.
STOCK8Potpuno podržano za čuvanje.
SURFACE9
NotImplementedError prilikom čuvanja.
RADAR10
NotImplementedError prilikom čuvanja.
TREEMAP11
NotImplementedError prilikom čuvanja.
SUNBURST12
NotImplementedError prilikom čuvanja.
HISTOGRAM13
NotImplementedError prilikom čuvanja.
FUNNEL14
NotImplementedError prilikom čuvanja.
MAP15
NotImplementedError prilikom čuvanja.

Chart objekti se ne konstrušu direktno. Koristite ws.charts.add(...) ili tipizirane metode za praktičnost (add_bar(), add_line(), add_pie(), add_area()).

typeChartType
Tip grafikona postavljen prilikom kreiranja.
title`strNone`Čitanje/Upis
category_data`strNone`Čitanje/Upis
n_seriesNSeries
Kolekcija serija podataka.
show_legendboolČitanje/PisanjeTrue (podrazumevano) za prikaz legende grafikona.
legend_positionstrČitanje/PisanjePozicija legende: 'right', 'left', 'top', 'bottom', 'top_right' (takođe prihvata skraćene forme 'r', 'l', 't', 'b', 'tr').
smoothboolČitanje/PisanjeTrue za korišćenje glatkih (splajn) linija na linijskim grafikonima.
groupingstrČitanje/PisanjeGrupisanje serija: 'standard', 'stacked', 'percentStacked', 'clustered'.
bar_directionstrČitanje/Pisanje
BAR grafikoni: 'bar' (horizontalno) ili 'col' (vertikalno/kolona).
gap_widthintČitanje/PisanjeRazmak između grupa stubova/kolona, 0–500 (podrazumevano 150).
overlapintČitanje/PisanjeProcenat preklapanja serija, -100 do 100 (podrazumevano 0).
vary_colorsboolČitanje/PisanjeTrue da dodeli jedinstvenu boju svakom podatku.
first_slice_angleintČitanje/PisanjePočetni ugao za prvi deo pite, 0–360 stepeni.
is_3dboolČitanje/PisanjeTrue da omogući 3D renderovanje.
view_3dChartView3D
3D rotation and perspective settings.
axeslist[ChartAxis]
Lista osa grafikona.
upper_left_rowint
0-based row index of the chart’s top-left anchor cell.
upper_left_columnint
0-based column index of the chart’s top-left anchor cell.
lower_right_rowint
0-based row index of the chart’s bottom-right anchor cell.
lower_right_columnint
0-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.

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 specificiranog tipa. Svi argumenti položaja su indeksirani od 0 (red/kolona).

add_bar

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

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

add_line

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

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

add_pie

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

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

add_area

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

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

Svojstva i iteracija

countBroj grafikona u kolekciji (samo za čitanje).
__len__()
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.

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 opsega kao što je "Sheet1!B1:B5". Postavi is_vertical=True kada su podaci raspoređeni u kolone. chart_type zamenjuje tip roditeljskog grafikona za ovu seriju (koristi se u kombinovanim grafikonima).

Svojstva i iteracija

countBroj serija (samo za čitanje).
__len__()
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. Dobijeno putem chart.n_series[index].

valuesstrNiz opsega za podatke Y‑vrednosti (npr., "Sheet1!B2:B6").
category_datastrNiz opsega za oznake kategorija/X‑ose za ovu seriju.
name`strNone`
chart_type`ChartTypeNone`
x_valuesstrNiz opsega za X vrednosti raspršenog grafikona.
error_bars`ChartErrorBarsNone`
smoothboolTrue za korišćenje glatkih linija za ovu seriju.

add_error_bars

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

Dodaje error barove ovoj seriji i vraća ChartErrorBars objekat.

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

ChartAxis

ChartAxis se pristupa putem chart.axes[index].

title`strNone`
number_format`strNone`
minimum_scale`floatNone`
maximum_scale`floatNone`
major_unit`floatNone`
minor_unit`floatNone`
is_logarithmicboolTrue za korišćenje logaritamske skale.
log_basefloatOsnova logaritma kada is_logarithmic je True.
crossesstrGde ova osa preseče okomitu osu: 'autoZero', 'min', 'max'.
crosses_at`floatNone`
reverse_orderboolTrue za preokretanje smera ose.
axis_typestrTip kategorije ose: 'catAx', 'valAx', 'dateAx', 'serAx'.
orientationstr'minMax' za normalan smer, 'maxMin' za obrnuti.

ChartView3D

ChartView3D se pristupa putem chart.view_3d. Važi samo kada chart.is_3d je True.

rotation_xintRotacija oko X-ose (elevacija), 0–90 stepeni.
rotation_yintRotacija oko Y-ose, 0–360 stepeni.
right_angle_axesboolTrue za korišćenje pravouglih osa (izometrijski prikaz).
perspectiveintPerspektivno izobličenje, 0–100. Ignorisano kada right_angle_axes je True.
height_percentintVisina grafikona kao procenat baze, 5–500.
depth_percentintDubina grafikona kao procenat baze, 20–2000.

ChartErrorBars

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

directionstrSmer trake greške: 'x', 'y', 'xy'.
bar_typestrKoje trake prikazati: 'both', 'minus', 'plus'.
val_typestrTip vrednosti: 'fixedVal', 'percentage', 'stdDev', 'stdErr'.
valfloatFiksna ili procentualna vrednost koja se koristi kada val_type je 'fixedVal' ili 'percentage'.
no_end_capboolTrue da se izostavi linija krajnje kapice na trakama greške.
plus_formula`strNone`
minus_formula`strNone`
line_width`intNone`
line_color`strNone`

Sledeći primer upisuje mesečne podatke o prihodu, kreira grupisani stubičasti grafikon sa naslovom i dve serije podataka, i čuva radnu svesku.

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 i

 Српски