Chart — Aspose.Cells FOSS for Python API Reference

aspose-cells-foss menyokong penyematan carta dalam lembar kerja. Carta dikendalikan melalui ws.charts, sebuah ChartCollection dilampirkan pada setiap Worksheet. Data siri ditambah melalui chart.n_series, sebuah NSeries koleksi.

Example: aspose.cells_foss

from aspose.cells_foss import ChartType

ChartType

ChartType adalah IntEnum yang mengenal pasti jenis carta.

ExampleExampleExample
LINE0Disokong sepenuhnya untuk simpan.
BAR1Disokong sepenuhnya untuk simpan.
PIE2Sepenuhnya disokong untuk simpan.
AREA3Sepenuhnya disokong untuk simpan.
BOX_WHISKER4Disimpan menggunakan format chartEx.
WATERFALL5Disimpan menggunakan format chartEx.
COMBO6Example NotImplementedError semasa simpan.
SCATTER7Example NotImplementedError semasa simpan.
STOCK8Sepenuhnya disokong untuk simpan.
SURFACE9Example NotImplementedError semasa simpan.
RADAR10Example NotImplementedError semasa simpan.
TREEMAP11Example NotImplementedError semasa simpan.
SUNBURST12Example NotImplementedError pada simpan.
HISTOGRAM13Example NotImplementedError pada simpan.
FUNNEL14Example NotImplementedError pada simpan.
MAP15Example NotImplementedError pada simpan.

Example

Chart objek tidak dibina secara langsung. Gunakan ws.charts.add(...) atau kaedah kemudahan berjenis (add_bar(), add_line(), add_pie(), add_area()).

Example

ExampleExampleExampleExample
typeChartTypeExampleJenis carta ditetapkan pada masa penciptaan.
title`strNone`Baca/Tulis
category_data`strNone`Baca/Tulis
n_seriesNSeriesExampleKoleksi siri data.
show_legendboolBaca/TulisTrue (lalai) untuk memaparkan legenda carta.
legend_positionstrBaca/TulisPenempatan legenda: 'right', 'left', 'top', 'bottom', 'top_right' (juga menerima bentuk pendek 'r', 'l', 't', 'b', 'tr').
smoothboolBaca/TulisTrue untuk menggunakan garisan licin (spline) pada carta garis.
groupingstrBaca/TulisPengelompokan siri: 'standard', 'stacked', 'percentStacked', 'clustered'.
bar_directionstrBaca/TulisExample BAR carta: 'bar' (mengufuk) atau 'col' (menegak/kolum).
gap_widthintBaca/TulisJarak antara kelompok bar/kolum, 0–500 (lalai 150).
overlapintBaca/TulisPeratusan pertindihan siri, -100 hingga 100 (lalai 0).
vary_colorsboolBaca/TulisTrue untuk menetapkan warna yang berbeza bagi setiap titik data.
first_slice_angleintBaca/TulisSudut permulaan untuk kepingan pai pertama, 0–360 darjah.
is_3dboolBaca/TulisTrue untuk membolehkan rendering 3D.
view_3dChartView3DExample3D rotation and perspective settings.
axeslist[ChartAxis]ExampleSenarai paksi carta.
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 diakses sebagai ws.charts. Ia mengandungi semua carta yang terbenam dalam lembar kerja.

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

Menambah carta jenis yang ditentukan. Semua argumen kedudukan menggunakan indeks baris/kolum bermula dari 0.

add_bar

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

Pintasan untuk add(ChartType.BAR, ...).

add_line

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

Pintasan untuk add(ChartType.LINE, ...).

add_pie

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

Pintasan untuk add(ChartType.PIE, ...).

add_area

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

Pintasan untuk add(ChartType.AREA, ...).

Sifat dan Iterasi

ExampleExample
countBilangan carta dalam koleksi (baca-sahaja).
__len__()Example count.
__iter__()Iterasi ke atas semua Chart objek.
__getitem__(index)Mengembalikan Chart pada asas sifar index.

NSeries

NSeries diakses melalui chart.n_series. Ia menguruskan siri data yang tergolong kepada carta.

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

Menambah satu siri data. area adalah rentang rentetan seperti "Sheet1!B1:B5". Tetapkan is_vertical=True apabila data disusun dalam lajur. chart_type menimpa jenis carta induk untuk siri ini (digunakan dalam carta gabungan).

Sifat dan Iterasi

ExampleExample
countBilangan siri (baca-sahaja).
__len__()Example count.
__iter__()Melakukan iterasi ke atas semua ChartSeries objek.
__getitem__(index)Mengembalikan ChartSeries pada berasaskan sifar index.

ChartSeries

ChartSeries mewakili satu siri data dalam carta. Diperoleh melalui chart.n_series[index].

Example

ExampleExampleExample
valuesstrRentetan julat untuk data nilai-Y (contohnya,., "Sheet1!B2:B6").
category_datastrRentetan julat untuk label kategori/sumbu-X bagi siri ini.
name`strNone`
chart_type`ChartTypeNone`
x_valuesstrRentetan julat untuk nilai X carta serakan.
error_bars`ChartErrorBarsNone`
smoothboolTrue untuk menggunakan garis licin bagi siri ini.

Example

add_error_bars

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

Menambah bar kesilapan kepada siri ini dan mengembalikan ChartErrorBars objek.

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

ChartAxis

ChartAxis diakses melalui chart.axes[index].

Example

ExampleExampleExample
title`strNone`
number_format`strNone`
minimum_scale`floatNone`
maximum_scale`floatNone`
major_unit`floatNone`
minor_unit`floatNone`
is_logarithmicboolTrue untuk menggunakan skala logaritma.
log_basefloatAsas logaritma apabila is_logarithmic adalah True.
crossesstrDi mana paksi ini melintasi paksi tegak lurus: 'autoZero', 'min', 'max'.
crosses_at`floatNone`
reverse_orderboolTrue untuk membalikkan arah paksi.
axis_typestrJenis kategori paksi: 'catAx', 'valAx', 'dateAx', 'serAx'.
orientationstr'minMax' untuk arah normal, 'maxMin' untuk terbalik.

ChartView3D

ChartView3D diakses melalui chart.view_3d. Hanya berlaku apabila chart.is_3d adalah True.

Example

ExampleExampleExample
rotation_xintputaran paksi X (ketinggian), 0–90 darjah.
rotation_yintputaran paksi Y, 0–360 darjah.
right_angle_axesboolTrue untuk menggunakan paksi sudut tepat (pandangan isometrik).
perspectiveintDistorsi perspektif, 0–100. Diabaikan apabila right_angle_axes adalah True.
height_percentintKetinggian carta sebagai peratusan asas, 5–500.
depth_percentintKedalaman carta sebagai peratusan asas, 20–2000.

ChartErrorBars

ChartErrorBars diakses melalui series.error_bars. Cipta dengan series.add_error_bars(...).

Example

ExampleExampleExample
directionstrArah bar ralat: 'x', 'y', 'xy'.
bar_typestrBar mana yang hendak dipaparkan: 'both', 'minus', 'plus'.
val_typestrJenis nilai: 'fixedVal', 'percentage', 'stdDev', 'stdErr'.
valfloatNilai tetap atau peratusan yang digunakan apabila val_type adalah 'fixedVal' atau 'percentage'.
no_end_capboolTrue untuk mengabaikan garisan hujung pada bar ralat.
plus_formula`strNone`
minus_formula`strNone`
line_width`intNone`
line_color`strNone`

Example

Contoh berikut menulis data pendapatan bulanan, mencipta carta bar berkelompok dengan tajuk dan dua siri data, serta menyimpan buku kerja.

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

Lihat Juga

 Bahasa Melayu