Chart — Aspose.Cells FOSS for Python API Reference

aspose-cells-foss suportă încorporarea diagramelor în foile de calcul. Diagramele sunt gestionate prin ws.charts, un ChartCollection atașat fiecărui Worksheet. Datele seriei sunt adăugate prin chart.n_series, un NSeries colecție.

ImageRenderOptions: aspose.cells_foss

from aspose.cells_foss import ChartType

ChartType

ChartType este un IntEnum care identifică tipul diagramei.

ImageRenderOptionsImageRenderOptionsImageRenderOptions
LINE0Suport complet pentru salvare.
BAR1Suport complet pentru salvare.
PIE2Suport complet pentru salvare.
AREA3Suport complet pentru salvare.
BOX_WHISKER4Salvat utilizând formatul chartEx.
WATERFALL5Salvat utilizând formatul chartEx.
COMBO6ImageRenderOptions NotImplementedError la salvare.
SCATTER7ImageRenderOptions NotImplementedError la salvare.
STOCK8Suport complet pentru salvare.
SURFACE9ImageRenderOptions NotImplementedError la salvare.
RADAR10ImageRenderOptions NotImplementedError la salvare.
TREEMAP11ImageRenderOptions NotImplementedError la salvare.
SUNBURST12ImageRenderOptions NotImplementedError la salvare.
HISTOGRAM13ImageRenderOptions NotImplementedError la salvare.
FUNNEL14ImageRenderOptions NotImplementedError la salvare.
MAP15ImageRenderOptions NotImplementedError la salvare.

ImageRenderOptions

Chart obiectele nu sunt construite direct. Folosiți ws.charts.add(...) sau metodele convenabile tipizate (add_bar(), add_line(), add_pie(), add_area()).

ImageRenderOptions

ImageRenderOptionsImageRenderOptionsImageRenderOptionsImageRenderOptions
typeChartTypeImageRenderOptionsTipul de diagramă este setat la crearea sa.
title`strNone`Citire/Scriere
category_data`strNone`Citire/Scriere
n_seriesNSeriesImageRenderOptionsColecție de serii de date.
show_legendboolCitire/ScriereTrue (implicit) pentru a afișa legenda graficului.
legend_positionstrCitire/ScrierePoziționarea legendei: 'right', 'left', 'top', 'bottom', 'top_right' (acceptă și forme scurte 'r', 'l', 't', 'b', 'tr').
smoothboolCitire/ScriereTrue pentru a folosi linii netede (spline) pe graficele de tip linie.
groupingstrCitire/ScriereGruparea seriilor: 'standard', 'stacked', 'percentStacked', 'clustered'.
bar_directionstrCitire/ScriereImageRenderOptions BAR grafice: 'bar' (orizontal) sau 'col' (vertical/coloană).
gap_widthintCitire/ScriereSpațiu între grupurile de bare/coloane, 0–500 (implicit 150).
overlapintCitire/ScriereProcent de suprapunere a seriilor, -100 la 100 (implicit 0).
vary_colorsboolCitire/ScriereTrue pentru a atribui o culoare distinctă fiecărui punct de date.
first_slice_angleintCitire/ScriereUnghiul de pornire pentru prima felie de plăcintă, 0–360 de grade.
is_3dboolCitire/ScriereTrue pentru a activa redarea 3D.
view_3dChartView3DImageRenderOptions3D rotation and perspective settings.
axeslist[ChartAxis]ImageRenderOptionsListă de axe ale graficului.
upper_left_rowintImageRenderOptions0-based row index of the chart’s top-left anchor cell.
upper_left_columnintImageRenderOptions0-based column index of the chart’s top-left anchor cell.
lower_right_rowintImageRenderOptions0-based row index of the chart’s bottom-right anchor cell.
lower_right_columnintImageRenderOptions0-based column index of the chart’s bottom-right anchor cell.

ChartCollection

ChartCollection este accesat ca ws.charts. Conține toate graficele încorporate într-o foaie de calcul.

ImageRenderOptions

add

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

Adaugă o diagramă de tipul specificat. Toate argumentele de poziție sunt indici de rând/coloană începând de la 0.

add_bar

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

Scurtătură pentru add(ChartType.BAR, ...).

add_line

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

Scurtătură pentru add(ChartType.LINE, ...).

add_pie

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

Scurtătură pentru add(ChartType.PIE, ...).

add_area

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

Scurtătură pentru add(ChartType.AREA, ...).

Proprietăți și iterare

ImageRenderOptionsImageRenderOptions
countNumăr de grafice din colecție (doar citire).
__len__()ImageRenderOptions count.
__iter__()Iterează peste toate Chart obiecte.
__getitem__(index)Returnează Chart la bază zero index.

NSeries

NSeries este accesat prin chart.n_series. Gestionează seriile de date care aparțin unui grafic.

ImageRenderOptions

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

Adaugă o serie de date. area este un șir de interval, cum ar fi "Sheet1!B1:B5". Setează is_vertical=True când datele sunt aranjate în coloane. chart_type suprascrie tipul de grafic părinte pentru această serie (utilizat în grafice combinate).

Proprietăți și iterare

ImageRenderOptionsImageRenderOptions
countNumăr de serii (doar citire).
__len__()ImageRenderOptions count.
__iter__()Iterează peste toate ChartSeries obiecte.
__getitem__(index)Returnează ChartSeries la indexare cu bază zero index.

ChartSeries

ChartSeries reprezintă o singură serie de date într-un grafic. Obținută prin chart.n_series[index].

ImageRenderOptions

ImageRenderOptionsImageRenderOptionsImageRenderOptions
valuesstrȘir de interval pentru datele valorii Y (de ex., "Sheet1!B2:B6").
category_datastrȘir de interval pentru etichetele de categorie/axa X pentru această serie.
name`strNone`
chart_type`ChartTypeNone`
x_valuesstrȘir de interval pentru valorile X ale graficului de tip scatter.
error_bars`ChartErrorBarsNone`
smoothboolTrue pentru a folosi linii netede pentru această serie.

ImageRenderOptions

add_error_bars

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

Adaugă bare de eroare la această serie și returnează ChartErrorBars obiectul.

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

ChartAxis

ChartAxis este accesat prin chart.axes[index].

ImageRenderOptions

ImageRenderOptionsImageRenderOptionsImageRenderOptions
title`strNone`
number_format`strNone`
minimum_scale`floatNone`
maximum_scale`floatNone`
major_unit`floatNone`
minor_unit`floatNone`
is_logarithmicboolTrue pentru a utiliza o scară logaritmică.
log_basefloatBaza logaritmului când is_logarithmic este True.
crossesstrUnde această axă intersectează axa perpendiculară: 'autoZero', 'min', 'max'.
crosses_at`floatNone`
reverse_orderboolTrue pentru a inversa direcția axei.
axis_typestrTipul categoriei axei: 'catAx', 'valAx', 'dateAx', 'serAx'.
orientationstr'minMax' pentru direcție normală, 'maxMin' pentru inversat.

ChartView3D

ChartView3D este accesat prin chart.view_3d. Se aplică numai când chart.is_3d este True.

ImageRenderOptions

ImageRenderOptionsImageRenderOptionsImageRenderOptions
rotation_xintRotire pe axa X (elevare), 0–90 de grade.
rotation_yintRotire pe axa Y, 0–360 de grade.
right_angle_axesboolTrue pentru a folosi axe la unghi drept (vedere izometrică).
perspectiveintDistorsiune de perspectivă, 0–100. Ignorat când right_angle_axes este True.
height_percentintÎnălțimea graficului ca procent din bază, 5–500.
depth_percentintAdâncimea graficului ca procent din bază, 20–2000.

ChartErrorBars

ChartErrorBars este accesat prin series.error_bars. Creează cu series.add_error_bars(...).

ImageRenderOptions

ImageRenderOptionsImageRenderOptionsImageRenderOptions
directionstrDirecția barei de eroare: 'x', 'y', 'xy'.
bar_typestrCare bare să fie afișate: 'both', 'minus', 'plus'.
val_typestrTipul valorii: 'fixedVal', 'percentage', 'stdDev', 'stdErr'.
valfloatValoare fixă sau procentuală utilizată când val_type este 'fixedVal' sau 'percentage'.
no_end_capboolTrue pentru a omite linia de capăt pe barele de eroare.
plus_formula`strNone`
minus_formula`strNone`
line_width`intNone`
line_color`strNone`

ImageRenderOptions

Exemplul următor scrie datele de venit lunar, creează un grafic cu bare grupate cu un titlu și două serii de date și salvează workbook-ul.

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

Vezi și

 Română