Chart

aspose-cells-foss підтримує вбудовування діаграм у робочі листи. Діаграми керуються через ws.charts, a ChartCollection прикріплений до кожного Worksheet. Дані серії додаються через chart.n_series, an NSeries колекція.

Enumerations: aspose.cells_foss

from aspose.cells_foss import ChartType

ChartType

ChartType є IntEnum який ідентифікує тип діаграми.

NameTypeAccessDescription
type``ReadGets the type.
title``Read/WriteGets or sets the title.
category_data``Read/WriteGets or sets the category data.
show_legend``Read/WriteGets or sets the show legend.
legend_position``Read/WriteGets or sets the legend position.
smooth``Read/WriteGets or sets the smooth.
n_series``ReadGets the n series.
NSeries``ReadPascalCase alias of n_series.
grouping``Read/WriteGets or sets the grouping.
bar_direction``Read/WriteGets or sets the bar direction.
gap_width``Read/WriteGets or sets the gap width.
overlap``Read/WriteGets or sets the overlap.
vary_colors``Read/WriteGets or sets the vary colors.
first_slice_angle``Read/WriteGets or sets the first slice angle.
is_of_pie``Read/WriteGets or sets the is of pie.
of_pie_type``Read/WriteGets or sets the of pie type.
second_pie_size``Read/WriteGets or sets the second pie size.
quartile_method``Read/WriteGets or sets the quartile method.
box_show_mean_line``Read/WriteGets or sets the box show mean line.
box_show_mean_marker``Read/WriteGets or sets the box show mean marker.
box_show_inner_points``Read/WriteGets or sets the box show inner points.
box_show_outlier_points``Read/WriteGets or sets the box show outlier points.
box_gap_width``Read/WriteGets or sets the box gap width.
is_3d``Read/WriteGets or sets the is 3d.
gap_depth``Read/WriteGets or sets the gap depth.
view_3d``ReadGets the view 3d.
View3D``ReadPascalCase alias of view_3d.
show_connector_lines``Read/WriteGets or sets the show connector lines.
has_subtotals``Read/WriteGets or sets the has subtotals.
sub_charts``ReadList of sub-chart descriptors for combo charts.
axes``ReadList of ChartAxis objects defining all axes for the chart.
scatter_style``Read/WriteGets or sets the scatter style.
wireframe``Read/WriteWhether the surface chart uses wireframe display mode (<c:wireframe val=‘1’/>).
radar_style``Read/WriteRadar chart style: ‘standard’, ‘marker’, or ‘filled’.
histogram_bin_count``Read/WriteNumber of bins for count-based binning (int or None for auto/size-based).
histogram_bin_size``Read/WriteBin width for size-based binning (float or None for auto/count-based).
histogram_interval_closed``Read/WriteWhich side of each bin interval is closed: ‘r’ (right) or ’l’ (left).
histogram_overflow``Read/WriteOverflow bin boundary value (float or None).
histogram_underflow``Read/WriteUnderflow bin boundary value (float or None).
disp_blanks_as``Read/WriteGets or sets the disp blanks as.
stock_style``Read/WriteGets or sets the stock style.

Enumerations

Chart об’єкти не створюються безпосередньо. Використовуйте ws.charts.add(...) або типізовані зручні методи (add_bar(), add_line(), add_pie(), add_area()).

Enumerations

SignatureDescription
__init__(chart_type, upper_left_row, upper_left_column, lower_right_row, lower_right_column)
add_series(values, category_data, name, chart_type, x_values)Convenience method to add a series.
add_axis(axis_type, axis_id)Adds an axis to the chart and returns it.
copy()Creates and returns a duplicate of the chart

ChartCollection

ChartCollection доступний як ws.charts. Він містить усі діаграми, вбудовані в аркуш.

Enumerations

add

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

Додає діаграму вказаного типу. Усі аргументи позиції — індекси рядка/стовпця, починаючи з 0.

add_bar

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

Комбінація клавіш для add(ChartType.BAR, ...).

add_line

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

Комбінація клавіш для add(ChartType.LINE, ...).

add_pie

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

Комбінація клавіш для add(ChartType.PIE, ...).

add_area

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

Комбінація клавіш для add(ChartType.AREA, ...).

Властивості та ітерація


NSeries

NSeries доступний через chart.n_series. Він керує серіями даних, що належать до діаграми.

Enumerations

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

Додає серію даних. area є рядком діапазону, наприклад "Sheet1!B1:B5". Встановити is_vertical=True коли дані розташовані у стовпцях. chart_type перевизначає тип батьківської діаграми для цієї серії (використовується в комбінованих діаграмах).

Властивості та ітерація


ChartSeries

ChartSeries представляє окрему серію даних у діаграмі. Отримано за допомогою chart.n_series[index].

Enumerations

Enumerations

add_error_bars

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

Додає смуги помилок до цієї серії та повертає ChartErrorBars об’єкт.


ChartAxis

ChartAxis доступний через chart.axes[index].

Enumerations


ChartView3D

ChartView3D доступний через chart.view_3d. Застосовується лише коли chart.is_3d є True.

Enumerations


ChartErrorBars

ChartErrorBars доступний через series.error_bars. Створити за допомогою series.add_error_bars(...).

Enumerations


Enumerations

Наступний приклад записує дані про щомісячний дохід, створює групову стовпчикову діаграму з заголовком та двома серіями даних і зберігає робочу книгу.

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

Див. також

 Українська