Chart — Aspose.Cells FOSS for Python API Reference
aspose-cells-foss는 워크시트에 차트를 삽입하는 것을 지원합니다. 차트는 다음을 통해 관리됩니다 ws.charts, a ChartCollection 각에 첨부된 Worksheet. 시리즈 데이터는 다음을 통해 chart.n_series, an NSeries 컬렉션.
SaveOptions: aspose.cells_foss
from aspose.cells_foss import ChartTypeChartType
ChartType 은 IntEnum 차트 유형을 식별하는.
| SaveOptions | SaveOptions | SaveOptions |
|---|---|---|
LINE | 0 | 저장에 대해 완전 지원됩니다. |
BAR | 1 | 저장에 대해 완전 지원됩니다. |
PIE | 2 | 저장에 완전히 지원됩니다. |
AREA | 3 | 저장에 완전히 지원됩니다. |
BOX_WHISKER | 4 | chartEx 형식으로 저장되었습니다. |
WATERFALL | 5 | chartEx 형식으로 저장되었습니다. |
COMBO | 6 | SaveOptions NotImplementedError 저장 시. |
SCATTER | 7 | SaveOptions NotImplementedError 저장 시. |
STOCK | 8 | 저장에 완전히 지원됩니다. |
SURFACE | 9 | SaveOptions NotImplementedError 저장 시. |
RADAR | 10 | SaveOptions NotImplementedError 저장 시. |
TREEMAP | 11 | SaveOptions NotImplementedError 저장 시. |
SUNBURST | 12 | SaveOptions NotImplementedError 저장 시. |
HISTOGRAM | 13 | SaveOptions NotImplementedError 저장 시. |
FUNNEL | 14 | SaveOptions NotImplementedError 저장 시. |
MAP | 15 | SaveOptions NotImplementedError 저장 시. |
SaveOptions
Chart 객체는 직접 생성되지 않습니다. 사용 ws.charts.add(...) 또는 형식화된 편의 메서드 (add_bar(), add_line(), add_pie(), add_area()).
SaveOptions
| SaveOptions | SaveOptions | SaveOptions | SaveOptions |
|---|---|---|---|
type | ChartType | SaveOptions | 차트 유형은 생성 시에 설정됩니다. |
title | `str | None` | 읽기/쓰기 |
category_data | `str | None` | 읽기/쓰기 |
n_series | NSeries | SaveOptions | 데이터 시리즈 컬렉션. |
show_legend | bool | 읽기/쓰기 | True (기본값) 차트 범례를 표시합니다. |
legend_position | str | 읽기/쓰기 | 범례 위치: 'right', 'left', 'top', 'bottom', 'top_right' (짧은 형태도 허용 'r', 'l', 't', 'b', 'tr'). |
smooth | bool | 읽기/쓰기 | True 라인 차트에 부드러운 (스플라인) 선을 사용합니다. |
grouping | str | 읽기/쓰기 | 시리즈 그룹화: 'standard', 'stacked', 'percentStacked', 'clustered'. |
bar_direction | str | 읽기/쓰기 | SaveOptions BAR 차트: 'bar' (수평) 또는 'col' (수직/열). |
gap_width | int | 읽기/쓰기 | 막대/열 클러스터 간 간격, 0–500 (기본값 150). |
overlap | int | 읽기/쓰기 | 시리즈 겹침 비율, -100~100 (기본값 0). |
vary_colors | bool | 읽기/쓰기 | True 각 데이터 포인트에 고유한 색상을 할당합니다. |
first_slice_angle | int | 읽기/쓰기 | 첫 번째 파이 조각의 시작 각도, 0–360도. |
is_3d | bool | 읽기/쓰기 | True 3D 렌더링을 활성화합니다. |
view_3d | ChartView3D | SaveOptions | 3D rotation and perspective settings. |
axes | list[ChartAxis] | SaveOptions | 차트 축 목록. |
upper_left_row | int | SaveOptions | 0-based row index of the chart’s top-left anchor cell. |
upper_left_column | int | SaveOptions | 0-based column index of the chart’s top-left anchor cell. |
lower_right_row | int | SaveOptions | 0-based row index of the chart’s bottom-right anchor cell. |
lower_right_column | int | SaveOptions | 0-based column index of the chart’s bottom-right anchor cell. |
ChartCollection
ChartCollection 다음과 같이 액세스합니다 ws.charts. 워크시트에 삽입된 모든 차트를 포함합니다.
SaveOptions
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, ...).
속성 및 반복
| SaveOptions | SaveOptions |
|---|---|
count | 컬렉션에 포함된 차트 수 (읽기 전용). |
__len__() | SaveOptions count. |
__iter__() | 모든 항목을 반복합니다 Chart 객체. |
__getitem__(index) | 다음을 반환합니다 Chart 제로 기반 index. |
NSeries
NSeries 는 다음을 통해 접근됩니다 chart.n_series. 차트에 속한 데이터 시리즈를 관리합니다.
SaveOptions
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 이 시리즈에 대해 상위 차트 유형을 재정의합니다 (콤보 차트에서 사용).
속성 및 반복
| SaveOptions | SaveOptions |
|---|---|
count | 시리즈 수 (읽기 전용). |
__len__() | SaveOptions count. |
__iter__() | 모든 항목을 반복합니다 ChartSeries 객체들. |
__getitem__(index) | 반환합니다 ChartSeries 0 기반에서 index. |
ChartSeries
ChartSeries 차트 내에서 단일 데이터 시리즈를 나타냅니다. 다음을 통해 얻습니다. chart.n_series[index].
SaveOptions
| SaveOptions | SaveOptions | SaveOptions |
|---|---|---|
values | str | Y값 데이터에 대한 범위 문자열 (예:., "Sheet1!B2:B6"). |
category_data | str | 이 시리즈에 대한 카테고리/X축 레이블에 대한 범위 문자열. |
name | `str | None` |
chart_type | `ChartType | None` |
x_values | str | 산점도 차트 X값에 대한 범위 문자열. |
error_bars | `ChartErrorBars | None` |
smooth | bool | True 이 시리즈에 부드러운 선을 사용합니다. |
SaveOptions
add_error_bars
series.add_error_bars(
direction='y',
bar_type='both',
val_type='fixedVal',
val=1.0,
no_end_cap=False
) -> ChartErrorBars이 시리즈에 오차 막대를 추가하고 반환합니다 ChartErrorBars 객체.
| SaveOptions | SaveOptions |
|---|---|
direction | 'x', 'y', 'xy' |
bar_type | 'both', 'minus', 'plus' |
val_type | 'fixedVal', 'percentage', 'stdDev', 'stdErr' |
ChartAxis
ChartAxis 는 다음을 통해 접근합니다 chart.axes[index].
SaveOptions
| SaveOptions | SaveOptions | SaveOptions |
|---|---|---|
title | `str | None` |
number_format | `str | None` |
minimum_scale | `float | None` |
maximum_scale | `float | None` |
major_unit | `float | None` |
minor_unit | `float | None` |
is_logarithmic | bool | True 로그 스케일을 사용하려면. |
log_base | float | 로그의 밑이 is_logarithmic 이다 True. |
crosses | str | 이 축이 수직 축과 교차하는 위치: 'autoZero', 'min', 'max'. |
crosses_at | `float | None` |
reverse_order | bool | True 축 방향을 반전하려면. |
axis_type | str | 축 카테고리 유형: 'catAx', 'valAx', 'dateAx', 'serAx'. |
orientation | str | 'minMax' 정방향에 대해, 'maxMin' 역방향에 대해. |
ChartView3D
ChartView3D 는 다음을 통해 접근합니다 chart.view_3d. 단지 다음인 경우에만 적용됩니다 chart.is_3d 이다 True.
SaveOptions
| SaveOptions | SaveOptions | SaveOptions |
|---|---|---|
rotation_x | int | X축 회전(고도), 0–90도. |
rotation_y | int | Y축 회전, 0–360도. |
right_angle_axes | bool | True 직각 축 사용(등축 보기). |
perspective | int | 원근 왜곡, 0–100. 무시될 때 right_angle_axes 이다 True. |
height_percent | int | 차트 높이(기준 대비 백분율), 5–500. |
depth_percent | int | 차트 깊이를 기준의 백분율로 표시, 20–2000. |
ChartErrorBars
ChartErrorBars 는 다음을 통해 액세스됩니다 series.error_bars. 다음을 사용하여 생성 series.add_error_bars(...).
SaveOptions
| SaveOptions | SaveOptions | SaveOptions |
|---|---|---|
direction | str | 오차 막대 방향: 'x', 'y', 'xy'. |
bar_type | str | 표시할 막대: 'both', 'minus', 'plus'. |
val_type | str | 값 유형: 'fixedVal', 'percentage', 'stdDev', 'stdErr'. |
val | float | 고정값 또는 백분율 값은 다음 경우에 사용됩니다 val_type 는 'fixedVal' 또는 'percentage'. |
no_end_cap | bool | True 오차 막대의 끝 캡 라인을 생략하려면. |
plus_formula | `str | None` |
minus_formula | `str | None` |
line_width | `int | None` |
line_color | `str | None` |
SaveOptions
다음 예제는 월별 매출 데이터를 기록하고, 제목과 두 개의 데이터 시리즈가 포함된 클러스터형 막대 차트를 생성한 뒤 워크북을 저장합니다.
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")