Chart — Aspose.Cells FOSS for Python API Reference

aspose-cells-foss mendukung penyematan diagram dalam lembar kerja. Diagram dikelola melalui ws.charts, sebuah ChartCollection terlampir pada masing-masing Worksheet. Data seri ditambahkan melalui chart.n_series, sebuah NSeries koleksi.

Example: aspose.cells_foss

from aspose.cells_foss import ChartType

ChartType

ChartType adalah sebuah IntEnum yang mengidentifikasi jenis diagram.

ExampleExampleExample
LINE0Sepenuhnya didukung untuk penyimpanan.
BAR1Sepenuhnya didukung untuk penyimpanan.
PIE2Sepenuhnya didukung untuk penyimpanan.
AREA3Sepenuhnya didukung untuk penyimpanan.
BOX_WHISKER4Disimpan menggunakan format chartEx.
WATERFALL5Disimpan menggunakan format chartEx.
COMBO6Example NotImplementedError pada penyimpanan.
SCATTER7Example NotImplementedError pada penyimpanan.
STOCK8Sepenuhnya didukung untuk penyimpanan.
SURFACE9Example NotImplementedError pada penyimpanan.
RADAR10Example NotImplementedError pada penyimpanan.
TREEMAP11Example NotImplementedError pada penyimpanan.
SUNBURST12Example NotImplementedError pada penyimpanan.
HISTOGRAM13Example NotImplementedError pada penyimpanan.
FUNNEL14Example NotImplementedError pada penyimpanan.
MAP15Example NotImplementedError pada penyimpanan.

Example

Chart objek tidak dibangun secara langsung. Gunakan ws.charts.add(...) atau metode kemudahan yang bertipe (add_bar(), add_line(), add_pie(), add_area()).

Example

ExampleExampleExampleExample
typeChartTypeExampleTipe diagram ditetapkan pada saat pembuatan.
title`strNone`Baca/Tulis
category_data`strNone`Baca/Tulis
n_seriesNSeriesExampleKoleksi seri data.
show_legendboolBaca/TulisTrue (default) untuk menampilkan legenda diagram.
legend_positionstrBaca/TulisPenempatan legenda: 'right', 'left', 'top', 'bottom', 'top_right' (juga menerima bentuk singkat 'r', 'l', 't', 'b', 'tr').
smoothboolBaca/TulisTrue untuk menggunakan garis halus (spline) pada diagram garis.
groupingstrRead/WritePengelompokan seri: 'standard', 'stacked', 'percentStacked', 'clustered'.
bar_directionstrRead/WriteExample BAR grafik: 'bar' (horizontal) atau 'col' (vertikal/kolom).
gap_widthintRead/WriteJarak antara kelompok batang/kolom, 0–500 (default 150).
overlapintRead/WritePersentase tumpang tindih seri, -100 hingga 100 (default 0).
vary_colorsboolRead/WriteTrue untuk menetapkan warna yang berbeda pada setiap titik data.
first_slice_angleintRead/WriteSudut awal untuk irisan pai pertama, 0–360 derajat.
is_3dboolRead/WriteTrue untuk mengaktifkan rendering 3D.
view_3dChartView3DExample3D rotation and perspective settings.
axeslist[ChartAxis]ExampleDaftar sumbu grafik.
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. Ini berisi semua diagram yang disematkan 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

Menambahkan diagram dengan tipe yang ditentukan. Semua argumen posisi menggunakan indeks baris/kolom yang dimulai 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, ...).

Properti dan Iterasi

ExampleExample
countJumlah grafik dalam koleksi (hanya-baca).
__len__()Example count.
__iter__()Iterasi melalui semua Chart objek.
__getitem__(index)Mengembalikan Chart pada indeks berbasis nol index.

NSeries

NSeries diakses melalui chart.n_series. Ini mengelola rangkaian data yang dimiliki oleh sebuah grafik.

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

Menambahkan rangkaian data. area adalah string rentang seperti "Sheet1!B1:B5". Atur is_vertical=True ketika data diatur dalam kolom. chart_type menimpa tipe grafik induk untuk seri ini (digunakan dalam grafik kombinasi).

Properti dan Iterasi

ExampleExample
countJumlah seri (hanya-baca).
__len__()Example count.
__iter__()Iterasi atas semua ChartSeries objek.
__getitem__(index)Mengembalikan ChartSeries pada indeks berbasis nol index.

ChartSeries

ChartSeries mewakili satu seri data dalam sebuah diagram. Diperoleh melalui chart.n_series[index].

Example

ExampleExampleExample
valuesstrString rentang untuk data nilai Y (misalnya,., "Sheet1!B2:B6").
category_datastrString rentang untuk label kategori/sumbu X untuk seri ini.
name`strNone`
chart_type`ChartTypeNone`
x_valuesstrString rentang untuk nilai X diagram sebar.
error_bars`ChartErrorBarsNone`
smoothboolTrue untuk menggunakan garis halus pada seri 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

Menambahkan batang kesalahan ke seri 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 logaritmik.
log_basefloatBasis logaritma ketika is_logarithmic adalah True.
crossesstrDi mana sumbu ini memotong sumbu tegak lurus: 'autoZero', 'min', 'max'.
crosses_at`floatNone`
reverse_orderboolTrue untuk membalik arah sumbu.
axis_typestrTipe kategori sumbu: 'catAx', 'valAx', 'dateAx', 'serAx'.
orientationstr'minMax' untuk arah normal, 'maxMin' untuk terbalik.

ChartView3D

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

Example

ExampleExampleExample
rotation_xintRotasi sumbu X (elevasi), 0–90 derajat.
rotation_yintRotasi sumbu Y, 0–360 derajat.
right_angle_axesboolTrue untuk menggunakan sumbu sudut kanan (tampilan isometrik).
perspectiveintDistorsi perspektif, 0–100. Diabaikan ketika right_angle_axes adalah True.
height_percentintTinggi bagan sebagai persentase dari dasar, 5–500.
depth_percentintKedalaman chart sebagai persentase dari basis, 20–2000.

ChartErrorBars

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

Example

ExampleExampleExample
directionstrArah bar error: 'x', 'y', 'xy'.
bar_typestrBar mana yang ditampilkan: 'both', 'minus', 'plus'.
val_typestrTipe nilai: 'fixedVal', 'percentage', 'stdDev', 'stdErr'.
valfloatNilai tetap atau persentase yang digunakan ketika val_type adalah 'fixedVal' atau 'percentage'.
no_end_capboolTrue untuk menghilangkan garis ujung pada bar error.
plus_formula`strNone`
minus_formula`strNone`
line_width`intNone`
line_color`strNone`

Example

Contoh berikut menulis data pendapatan bulanan, membuat diagram batang berkelompok dengan judul dan dua seri data, serta menyimpan workbook.

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 Indonesia