Sparkline

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, SparklineGroup

SparklineType

SparklineType jest IntEnum identyfikującym wizualną formę grupy sparkline.

ImageRenderOptionsImageRenderOptionsImageRenderOptions
LINE0Sparkline liniowy — renderuje dane jako połączoną linię.
COLUMN1Sparkline kolumnowy — renderuje dane jako pionowe słupki.
WIN_LOSS2Sparkline 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.

ImageRenderOptionsImageRenderOptionsImageRenderOptions
ZERO0Traktuje puste komórki jako zero.
GAP1Pozostawia przerwę tam, gdzie komórki są puste (linia jest przerwana).
CONNECTED2Łą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)
ImageRenderOptionsImageRenderOptionsImageRenderOptions
data_rangestrZakres w stylu A1 zawierający dane źródłowe wykresu liniowego (np., "Sheet1!B2:G2").
cell_referencestrAdres komórki w stylu A1, w którym wyświetlany jest wykres liniowy (np., "H2").

ImageRenderOptions

ImageRenderOptionsImageRenderOptionsImageRenderOptions
data_rangestrZakres danych źródłowych.
cell_referencestrAdres 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

ImageRenderOptionsImageRenderOptionsImageRenderOptions
typeSparklineTypeForma Sparkline: LINE, COLUMN, lub WIN_LOSS.
display_empty_cells_asSparklineEmptyCellsJak obsługiwać puste komórki w zakresie danych.
color_seriesstrKolor głównej linii/pasków sparkline, w formacie szesnastkowym RRGGBB.
color_negativestrKolor pasków o ujemnych wartościach (WIN_LOSS i COLUMN), w formacie szesnastkowym RRGGBB.
color_axisstrKolor linii osi zerowej, w formacie szesnastkowym RRGGBB.
color_markersstrKolor znaczników punktów danych na liniowych sparkline, w formacie szesnastkowym RRGGBB.
color_firststrKolor podświetlenia pierwszego punktu danych, w formacie szesnastkowym RRGGBB.
color_laststrKolor podświetlenia ostatniego punktu danych, w formacie szesnastkowym RRGGBB.
color_highstrKolor podświetlenia dla najwyższego punktu danych, w formacie szesnastkowym RRGGBB.
color_lowstrKolor podświetlenia dla najniższego punktu danych, w formacie szesnastkowym RRGGBB.
sparklineslist[Sparkline]Lista pojedynczych sparkline w tej grupie (tylko do odczytu).
countintLiczba sparkline w tej grupie (tylko do odczytu).

ImageRenderOptions

add_sparkline

group.add_sparkline(data_range: str, cell_reference: str) -> Sparkline

Dodaje 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
) -> SparklineGroup

Tworzy 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.

ImageRenderOptionsImageRenderOptionsImageRenderOptions
sparkline_typeSparklineTypeWizualna forma wykresów typu sparkline.
data_range`strNone`
is_verticalboolImageRenderOptions True, każda kolumna w data_range zasilają jeden sparkline; gdy False, każdy wiersz robi.
location_range`strNone`

add_group

ws.sparkline_groups.add_group(sparkline_type=SparklineType.LINE) -> SparklineGroup

Tworzy pustą grupę podanego typu. Sparkline’y muszą być dodawane indywidualnie za pomocą group.add_sparkline(...).

Właściwości i iteracja

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

Zobacz także

 Polski