Подтвердить что ты не робот

Экспорт pandas Стилированный файл таблицы в файл

Приведенный ниже код при запуске в ноутбуке jupyter отображает таблицу с цветовым градиентом, который я хотел бы экспортировать в файл изображения.

Получаемый объект "styled_table", который делает рендеринг ноутбука, представляет собой тип pandas.io.formats.style.Styler.

Мне не удалось найти способ экспортировать Styler в образ.

Я надеюсь, что кто-то может поделиться рабочим примером экспорта или дать мне несколько указателей.

import pandas as pd
import seaborn as sns

data = {('count', 's25'): 
       {('2017-08-11', 'Friday'): 88.0,
        ('2017-08-12', 'Saturday'): 90.0,
        ('2017-08-13', 'Sunday'): 93.0},
        ('count', 's67'): 
       {('2017-08-11', 'Friday'): 404.0,
        ('2017-08-12', 'Saturday'): 413.0,
        ('2017-08-13', 'Sunday'): 422.0},
        ('count', 's74'): 
       {('2017-08-11', 'Friday'): 203.0,
        ('2017-08-12', 'Saturday'): 227.0,
        ('2017-08-13', 'Sunday'): 265.0},
        ('count', 's79'): 
       {('2017-08-11', 'Friday'): 53.0,
        ('2017-08-12', 'Saturday'): 53.0,
        ('2017-08-13', 'Sunday'): 53.0}}

table = pd.DataFrame.from_dict(data)
table.sort_index(ascending=False, inplace=True)

cm = sns.light_palette("seagreen", as_cmap=True)
styled_table = table.style.background_gradient(cmap=cm)
styled_table

введите описание изображения здесь

4b9b3361

Ответ 1

Как уже упоминалось в комментариях, вы можете использовать свойство render чтобы получить HTML-код для таблицы стилей:

html = styled_table.render()

Затем вы можете использовать пакет, который преобразует HTML в изображение. Например, IMGKit: библиотека Python HTML для обертки IMG. Имейте в виду, что это решение требует установки wkhtmltopdf, инструмента командной строки для рендеринга HTML в PDF и различных форматов изображений. Все это описано на странице IMGKit.

Если у вас есть это, все остальное просто:

import imgkit
imgkit.from_string(html, 'styled_table.png')