Spec-Zone.ru › pandas 1

pandas.io.formats.style.Styler.text_gradient

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

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

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

Параметры
cmap:строка или цветовая карта

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

low:число с плавающей точкой

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

high:число с плавающей точкой

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

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

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

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

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

vmin:число с плавающей точкой, необязательно

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

Новая в версии 1.0.0.

vmax:число с плавающей точкой, необязательно

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

Новая в версии 1.0.0.

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

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

Новая в версии 1.3.0.

Возвращаемое значение
self:Styler

См. также

Styler.background_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.text_gradient(axis=0)  
../../_images/tg_ax0.png

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

>>> df.style.text_gradient(axis=None)  
../../_images/tg_axNone.png

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

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

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

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

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

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

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

>>> gmap = np.array([[1,2,3], [2,3,4], [3,4,5]])
>>> df.style.text_gradient(axis=None, gmap=gmap,
...     cmap='YlOrRd', subset=['Temp (c)', 'Rain (mm)', 'Wind (m/s)']
... )  
../../_images/tg_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/1.5.0/reference/api/pandas.io.formats.style.Styler.text_gradient.html

Spec-Zone.ru

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