Sparkline — Aspose.Cells FOSS for Python API Reference
Sparklines — це мініатюрні діаграми, вбудовані в окремі клітинки, вперше з’явилися в Excel 2010. aspose-cells-foss керує sparklines за допомогою SparklineGroup і SparklineGroupCollection (ws.sparkline_groups). Кожна група містить один або кілька Sparkline об’єктів, що мають однаковий тип і налаштування кольору.
Enumerations: aspose.cells_foss
from aspose.cells_foss import SparklineType, SparklineEmptyCells, Sparkline, SparklineGroupSparklineType
SparklineType є IntEnum що ідентифікує візуальну форму групи sparkline.
| Enumerations | Enumerations | Enumerations |
|---|---|---|
LINE | 0 | Лінійний sparkline — відображає дані у вигляді з’єднаної лінії. |
COLUMN | 1 | Стовпчиковий sparkline — відображає дані у вигляді вертикальних стовпців. |
WIN_LOSS | 2 | Win/loss sparkline — кожне значення відображається як позитивний або негативний блок. |
SparklineEmptyCells
SparklineEmptyCells є IntEnum керує тим, як порожні клітинки обробляються у sparkline.
| Enumerations | Enumerations | Enumerations |
|---|---|---|
ZERO | 0 | Розглядає порожні клітинки як нуль. |
GAP | 1 | Залишає проміжок там, де клітинки порожні (лінія розривається). |
CONNECTED | 2 | З’єднує суміжні непорожні значення, пропускаючи проміжок. |
Enumerations
Один Sparkline пов’язує один діапазон даних з однією коміркою.
Enumerations
Sparkline(data_range: str, cell_reference: str)| Enumerations | Enumerations | Enumerations |
|---|---|---|
data_range | str | Діапазон у форматі A1, що містить вихідні дані спарклайна (наприклад,., "Sheet1!B2:G2"). |
cell_reference | str | Адреса клітини у форматі A1, де відображається спарклайн (наприклад,., "H2"). |
Enumerations
| Enumerations | Enumerations | Enumerations |
|---|---|---|
data_range | str | Діапазон вихідних даних. |
cell_reference | str | Адреса клітини відображення. |
SparklineGroup
A SparklineGroup визначає спільні візуальні налаштування (тип, кольори, обробка порожніх клітин) для набору спарклайнів. SparklineGroup об’єкти не створюються безпосередньо — використовуйте ws.sparkline_groups.add(...) або ws.sparkline_groups.add_group(...).
Enumerations
| Enumerations | Enumerations | Enumerations |
|---|---|---|
type | SparklineType | Форма Sparkline: LINE, COLUMN, або WIN_LOSS. |
display_empty_cells_as | SparklineEmptyCells | Як обробляти порожні клітинки у діапазоні даних. |
color_series | str | Колір основної лінії/стовпців Sparkline, у вигляді шістнадцяткового RRGGBB. |
color_negative | str | Колір стовпців з від’ємними значеннями (WIN_LOSS та COLUMN), у вигляді шістнадцяткового RRGGBB. |
color_axis | str | Колір лінії нульової осі, у вигляді шістнадцяткового RRGGBB. |
color_markers | str | Колір маркерів точок даних на лінійних Sparkline, у вигляді шістнадцяткового RRGGBB. |
color_first | str | Колір підсвічування першої точки даних, у вигляді шістнадцяткового RRGGBB. |
color_last | str | Колір підсвічування для останньої точки даних, у форматі RRGGBB hex. |
color_high | str | Колір підсвічування для найвищої точки даних, у форматі RRGGBB hex. |
color_low | str | Колір підсвічування для найнижчої точки даних, у форматі RRGGBB hex. |
sparklines | list[Sparkline] | Список окремих спарклайнів у цій групі лише для читання. |
count | int | Кількість спарклайнів у цій групі (лише для читання). |
Enumerations
add_sparkline
group.add_sparkline(data_range: str, cell_reference: str) -> SparklineДодає окремий спарклайн до цієї групи та повертає новий Sparkline об’єкт.
SparklineGroupCollection
SparklineGroupCollection доступний як ws.sparkline_groups. Він містить усі групи спарклайнів на аркуші.
Enumerations
add
ws.sparkline_groups.add(
sparkline_type=SparklineType.LINE,
data_range=None,
is_vertical=False,
location_range=None
) -> SparklineGroupСтворює нову групу та, за потреби, заповнює її спарклайнами, отриманими з data_range (рядки або стовпці залежно від is_vertical) розташованих у клітинках, описаних location_range. Повертає новий SparklineGroup.
| Enumerations | Enumerations | Enumerations |
|---|---|---|
sparkline_type | SparklineType | Візуальний вигляд спарклайнів. |
data_range | `str | None` |
is_vertical | bool | Enumerations True, кожен стовпець у data_range заповнює один спарклайн; коли False, кожен рядок робить. |
location_range | `str | None` |
add_group
ws.sparkline_groups.add_group(sparkline_type=SparklineType.LINE) -> SparklineGroupСтворює порожню групу заданого типу. Спарклайни потрібно додавати окремо за допомогою group.add_sparkline(...).
Властивості та ітерація
| Enumerations | Enumerations |
|---|---|
count | Кількість груп спарклайнів на цьому аркуші (тільки для читання). |
__len__() | Enumerations count. |
__iter__() | Перебирає всі SparklineGroup об’єкти. |
__getitem__(index) | Повертає SparklineGroup на нульовій основі index. |
Enumerations
Наступний приклад записує дані про щомісячний дохід для трьох регіонів і додає лінійний sparkline для кожного рядка.
from aspose.cells_foss import Workbook, SparklineType, SparklineEmptyCells
wb = Workbook()
ws = wb.worksheets[0]
ws.name = "Trends"
# Write headers
months = ["Jan", "Feb", "Mar", "Apr", "May", "Jun"]
for col, m in enumerate(months):
ws.cells[0][col + 1].put_value(m)
ws.cells["A1"].put_value("Region")
ws.cells["H1"].put_value("Trend")
# Write three rows of data
regions = [
("North", [12000, 14500, 13800, 16200, 15900, 17400]),
("South", [9800, 10200, 11500, 10900, 12300, 13100]),
("West", [7500, 8100, 7900, 8800, 9200, 10500]),
]
for row_i, (name, values) in enumerate(regions, start=1):
ws.cells[row_i][0].put_value(name)
for col_i, v in enumerate(values):
ws.cells[row_i][col_i + 1].put_value(v)
# Add a line sparkline group — one sparkline per data row
group = ws.sparkline_groups.add(
sparkline_type=SparklineType.LINE,
data_range="Trends!B2:G4",
is_vertical=False,
location_range="Trends!H2:H4",
)
# Customize colors
group.color_series = "4472C4" # blue lines
group.color_high = "70AD47" # green for peak
group.color_low = "FF0000" # red for trough
group.display_empty_cells_as = SparklineEmptyCells.GAP
wb.save("sparklines.xlsx")