Spec-Zone.ru › pandas 2

pandas.io.formats.style.Styler.background_gradient

Styler.background_gradient(cmap='PuBu', low=0, high=0, axis=0, subset=None, text_color_threshold=0.408, vmin=None, vmax=None, gmap=None)[source]

Заливка фоном в стиле градиента.

Цвет фона определяется в соответствии с данными в каждом столбце, строке или фрейме или с помощью заданной карты градиента. Требуется matplotlib.

Parameters:
cmap:str или цветовая карта

Цветовая карта Matplotlib.

low:float

Сжимает диапазон цветов в нижней части. Это кратное диапазону данных для расширения ниже минимума; хорошие значения обычно в [0, 1], по умолчанию 0.

high:float

Сжимает диапазон цветов в верхней части. Это кратное диапазону данных для расширения выше максимума; хорошие значения обычно в [0, 1], по умолчанию 0.

axis:{0, 1, “индекс”, “столбцы”, None}, по умолчанию 0

Применить к каждому столбцу (axis=0 или 'index'), к каждой строке (axis=1 или 'columns') или ко всему DataFrame сразу с axis=None.

subset:метка, массив-подобный объект, IndexSlice, необязательно

Действительный двумерный вход для DataFrame.loc[<подмножество>], или, в случае одномерного ввода или одного ключа, для DataFrame.loc[:, <подмножество>], где столбцы имеют приоритет, для ограничения data *перед* применением функции.

text_color_threshold:float или int

Пороговое значение яркости для определения цвета текста в [0, 1]. Улучшает видимость текста на фоне с различными цветами. Весь текст темный, если 0, и светлый, если 1, по умолчанию 0.408.

vmin:float, необязательно

Минимальное значение данных, которое соответствует минимальному значению цветовой карты. Если не указано, используется минимальное значение данных (или gmap).

vmax:float, необязательно

Максимальное значение данных, которое соответствует максимальному значению цветовой карты. Если не указано, используется максимальное значение данных (или gmap).

gmap:массив-подобный объект, необязательно

Карта градиента для определения цветов фона. Если не указано, используются данные из строк, столбцов или фрейма. Если задано как ndarray или список, должно иметь идентичную форму с исходными данными, учитывая axis и subset. Если задано как DataFrame или Series, должно иметь те же метки индекса и столбцов, учитывая axis и subset. Если указано, vmin и vmax должны быть заданы относительно этой карты градиента.

New in version 1.3.0.

Returns:
Styler

См. также

Styler.text_gradient

Окрашивание текста в стиле градиента.

Примечания

При использовании low и high диапазон градиента, заданный данными, если gmap не задан, или gmap, расширяется в нижней части до map.min - low * map.range и в верхней части до map.max + high * map.range перед нормализацией и определением цветов.

Если используется вместе с vmin и vmax, map.min, map.max и map.range заменяются значениями в соответствии со значениями, полученными из vmin и vmax.

Этот метод предварительно выберет числовые столбцы и проигнорирует нечисловые столбцы, если не указан gmap, в этом случае предварительного выбора не происходит.

Примеры

>>> df = pd.DataFrame(columns=["City", "Temp (c)", "Rain (mm)", "Wind (m/s)"],
...                   data=[["Stockholm", 21.6, 5.0, 3.2],
...                         ["Oslo", 22.4, 13.3, 3.1],
...                         ["Copenhagen", 24.5, 0.0, 6.7]])

Заполнение значениями по столбцам с axis=0, предварительно выбирая числовые столбцы

>>> df.style.background_gradient(axis=0)  
../../_images/bg_ax0.png

Заполнение всех значений коллективно с помощью axis=None

>>> df.style.background_gradient(axis=None)  
../../_images/bg_axNone.png

Сжатие цветовой карты с обеих low и high сторон

>>> df.style.background_gradient(axis=None, low=0.75, high=1.0)  
../../_images/bg_axNone_lowhigh.png

Ручное задание vmin и vmax пороговых значений градиента

>>> df.style.background_gradient(axis=None, vmin=6.7, vmax=21.6)  
../../_images/bg_axNone_vminvmax.png

Установка gmap и применение ко всем столбцам с другим cmap

>>> df.style.background_gradient(axis=0, gmap=df['Temp (c)'], cmap='YlOrRd')
...  
../../_images/bg_gmap.png

Установка карты градиента для dataframe (т.е. axis=None), нам необходимо явно указать subset для соответствия gmap форме

>>> gmap = np.array([[1,2,3], [2,3,4], [3,4,5]])
>>> df.style.background_gradient(axis=None, gmap=gmap,
...     cmap='YlOrRd', subset=['Temp (c)', 'Rain (mm)', 'Wind (m/s)']
... )  
../../_images/bg_axNone_gmap.png

© 2008–2022, AQR Capital Management, LLC, Lambda Foundry, Inc. and PyData Development Team
Licensed under the 3-clause BSD License.
https://pandas.pydata.org/pandas-docs/version/2.2.2/reference/api/pandas.io.formats.style.Styler.background_gradient.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API