Maison  >  Article  >  développement back-end  >  Comment enregistrer un DataFrame Pandas en tant qu'image PNG ?

Comment enregistrer un DataFrame Pandas en tant qu'image PNG ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-11-03 01:49:02476parcourir

How to Save a Pandas DataFrame as a PNG Image?

Enregistrer un DataFrame Pandas en tant qu'image PNG

Enregistrer un DataFrame Pandas en tant qu'image peut être utile pour présenter des données dans un format visuellement accessible. Bien que la conversion HTML puisse fournir une solution, cet article se concentre sur la création d'une image PNG.

Solution

En utilisant matplotlib, Pandas permet le traçage de tableaux. Pour enregistrer un tableau sous forme d'image PNG sans esthétique inutile, suivez ces étapes :

<code class="python">import matplotlib.pyplot as plt
import pandas as pd
from pandas.plotting import table

# Suppress axes and labels
ax = plt.subplot(111, frame_on=False)
ax.xaxis.set_visible(False)
ax.yaxis.set_visible(False)

table(ax, df)  # Replace 'df' with your DataFrame

# Save the plot as a PNG
plt.savefig('mytable.png')</code>

Simulation multi-index

Pour simuler des multi-index lors de l'application de la méthode ci-dessus :

  1. Réinitialisez les multi-index sur les colonnes normales :

    <code class="python">df = df.reset_index()</code>
  2. Supprimez les colonnes multi-index d'ordre supérieur en double :

    <code class="python">df.ix[df.duplicated('first') , 'first'] = ''</code>
  3. Remplacez les noms de colonnes multi-index par des chaînes vides :

    <code class="python">new_cols = df.columns.values
    new_cols[:2] = '',''
    df.columns = new_cols</code>
  4. Définissez les étiquettes des lignes du tableau sur des chaînes vides (pour supprimer l'affichage) :

    <code class="python">table(ax, df, rowLabels=['']*df.shape[0], loc='center')</code>

Avec ces ajustements, une table multi-indexée peut être représentée sous forme d'image PNG.

Avertissements de dépréciation

  • Le pandas.tools.plotting l'importation pour la table est obsolète. Utilisez plutôt pandas.plotting.
  • L'indexeur ix est obsolète. Utilisez plutôt loc.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn