Sparkline — Aspose.Cells FOSS for Python API Reference
Sparklines są miniaturowymi wykresami osadzonymi w poszczególnych komórkach, wprowadzonymi w Excelu 2010. aspose-cells-foss zarządza sparkline’ami poprzez SparklineGroup i SparklineGroupCollection (ws.sparkline_groups). Każda grupa zawiera jeden lub więcej Sparkline obiektów dzielących ten sam typ i ustawienia kolorów.
ImageRenderOptions: aspose.cells_foss
from aspose.cells_foss import SparklineType, SparklineEmptyCells, Sparkline, SparklineGroupSparklineType
SparklineType jest IntEnum identyfikującym wizualną formę grupy sparkline.
| ImageRenderOptions | ImageRenderOptions | ImageRenderOptions |
|---|---|---|
LINE | 0 | Sparkline liniowy — renderuje dane jako połączoną linię. |
COLUMN | 1 | Sparkline kolumnowy — renderuje dane jako pionowe słupki. |
WIN_LOSS | 2 | Sparkline wygrana/przegrana — każda wartość jest wyświetlana jako dodatni lub ujemny blok. |
SparklineEmptyCells
SparklineEmptyCells jest IntEnum kontrolujący sposób, w jaki puste komórki są obsługiwane w sparkline.
| ImageRenderOptions | ImageRenderOptions | ImageRenderOptions |
|---|---|---|
ZERO | 0 | Traktuje puste komórki jako zero. |
GAP | 1 | Pozostawia przerwę tam, gdzie komórki są puste (linia jest przerwana). |
CONNECTED | 2 | Łączy sąsiadujące niepuste wartości, pomijając przerwę. |
ImageRenderOptions
A Sparkline wiąże pojedynczy zakres danych z pojedynczą lokalizacją komórki.
ImageRenderOptions
Sparkline(data_range: str, cell_reference: str)| ImageRenderOptions | ImageRenderOptions | ImageRenderOptions |
|---|---|---|
data_range | str | Zakres w stylu A1 zawierający dane źródłowe wykresu liniowego (np., "Sheet1!B2:G2"). |
cell_reference | str | Adres komórki w stylu A1, w którym wyświetlany jest wykres liniowy (np., "H2"). |
ImageRenderOptions
| ImageRenderOptions | ImageRenderOptions | ImageRenderOptions |
|---|---|---|
data_range | str | Zakres danych źródłowych. |
cell_reference | str | Adres komórki wyświetlania. |
SparklineGroup
A SparklineGroup definiuje wspólne ustawienia wizualne (typ, kolory, obsługa pustych komórek) dla zestawu wykresów liniowych. SparklineGroup obiekty nie są tworzone bezpośrednio — użyj ws.sparkline_groups.add(...) lub ws.sparkline_groups.add_group(...).
ImageRenderOptions
| ImageRenderOptions | ImageRenderOptions | ImageRenderOptions |
|---|---|---|
type | SparklineType | Forma Sparkline: LINE, COLUMN, lub WIN_LOSS. |
display_empty_cells_as | SparklineEmptyCells | Jak obsługiwać puste komórki w zakresie danych. |
color_series | str | Kolor głównej linii/pasków sparkline, w formacie szesnastkowym RRGGBB. |
color_negative | str | Kolor pasków o ujemnych wartościach (WIN_LOSS i COLUMN), w formacie szesnastkowym RRGGBB. |
color_axis | str | Kolor linii osi zerowej, w formacie szesnastkowym RRGGBB. |
color_markers | str | Kolor znaczników punktów danych na liniowych sparkline, w formacie szesnastkowym RRGGBB. |
color_first | str | Kolor podświetlenia pierwszego punktu danych, w formacie szesnastkowym RRGGBB. |
color_last | str | Kolor podświetlenia ostatniego punktu danych, w formacie szesnastkowym RRGGBB. |
color_high | str | Kolor podświetlenia dla najwyższego punktu danych, w formacie szesnastkowym RRGGBB. |
color_low | str | Kolor podświetlenia dla najniższego punktu danych, w formacie szesnastkowym RRGGBB. |
sparklines | list[Sparkline] | Lista pojedynczych sparkline w tej grupie (tylko do odczytu). |
count | int | Liczba sparkline w tej grupie (tylko do odczytu). |
ImageRenderOptions
add_sparkline
group.add_sparkline(data_range: str, cell_reference: str) -> SparklineDodaje pojedynczy sparkline do tej grupy i zwraca nowy Sparkline obiekt.
SparklineGroupCollection
SparklineGroupCollection jest dostępny jako ws.sparkline_groups. Zawiera wszystkie grupy sparkline w arkuszu.
ImageRenderOptions
dodaj
ws.sparkline_groups.add(
sparkline_type=SparklineType.LINE,
data_range=None,
is_vertical=False,
location_range=None
) -> SparklineGroupTworzy nową grupę i opcjonalnie wypełnia ją sparkline pochodzącymi z data_range (wierszy lub kolumn w zależności od is_vertical) umieszczonych w komórkach opisanych przez location_range. Zwraca nowy SparklineGroup.
| ImageRenderOptions | ImageRenderOptions | ImageRenderOptions |
|---|---|---|
sparkline_type | SparklineType | Wizualna forma wykresów typu sparkline. |
data_range | `str | None` |
is_vertical | bool | ImageRenderOptions True, każda kolumna w data_range zasilają jeden sparkline; gdy False, każdy wiersz robi. |
location_range | `str | None` |
add_group
ws.sparkline_groups.add_group(sparkline_type=SparklineType.LINE) -> SparklineGroupTworzy pustą grupę podanego typu. Sparkline’y muszą być dodawane indywidualnie za pomocą group.add_sparkline(...).
Właściwości i iteracja
| ImageRenderOptions | ImageRenderOptions |
|---|---|
count | Liczba grup sparkline na tym arkuszu (tylko do odczytu). |
__len__() | ImageRenderOptions count. |
__iter__() | Iteruje po wszystkich SparklineGroup obiektach. |
__getitem__(index) | Zwraca SparklineGroup w zerowo-indeksowanym index. |
ImageRenderOptions
Poniższy przykład zapisuje miesięczne dane przychodów dla trzech regionów i dodaje wykres liniowy sparkline dla każdego wiersza.
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")