Le code ci-dessous lorsqu'il est exécuté dans le cahier jupyter rend un tableau avec un format de dégradé de couleurs que je voudrais exporter vers un fichier image.
L'objet 'styled_table' résultant que le bloc-notes affiche est de type pandas.io.formats.style.Styler.
Je n'ai pas trouvé de moyen d'exporter le Styler vers une image.
J'espère que quelqu'un pourra partager un exemple de travail d'exportation, ou me donner quelques conseils.
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
Comme mentionné dans les commentaires, vous pouvez utiliser la propriété render
pour obtenir un code HTML de la table stylisée:
html = styled_table.render()
Vous pouvez ensuite utiliser un package qui convertit le HTML en une image. Par exemple, IMGKit: Python HTML pour wrapper IMG . Gardez à l'esprit que cette solution nécessite l'installation de wkhtmltopdf , une commande outil de ligne pour rendre HTML en PDF et divers formats d'image. Tout est décrit dans la page IMGKit.
Une fois que vous avez cela, le reste est simple:
import imgkit
imgkit.from_string(html, 'styled_table.png')