Pour plus d’informations sur la disponibilité, consultez Disponibilité de Python dans Excel. Si vous rencontrez des problèmes avec Python dans Excel, signalez-les en sélectionnant Commentaires d’aide> dans Excel.
Vous débutez avec Python dans Excel ? Commencez par Introduction à Python dans Excel et commencez à utiliser Python dans Excel.
Utiliser les bibliothèques Python open source pour créer des tracés et des graphiques
Python dans Excel est fourni avec un ensemble de bibliothèques Python fournies par Anaconda. Cet article explique comment utiliser les bibliothèques Python, telles que seaborn et Matplotlib, pour créer des tracés et des graphiques. Pour en savoir plus sur les bibliothèques open source disponibles avec Python dans Excel, consultez Bibliothèques open source et Python dans Excel.
Les exemples de cet article utilisent le jeu de données sur les fleurs d’iris. Téléchargez cet exemple de classeur à suivre avec l’article : python-in-excel-iris-dataset.xlsx.
Créer un tracé de paire avec seaborn
Cet exemple montre comment créer une visualisation de tracé de paire de l’ensemble de données sur les fleurs d’iris. Un diagramme de paire est une matrice de tracés et de graphiques qui compare la relation entre chaque variable d’un ensemble de données. Dans ce cas, le jeu de données sur les fleurs d’iris contient quatre colonnes de données numériques : sepal_length, sepal_width, petal_length et petal_width.
Python dans Excel crée la visualisation avec la bibliothèque seaborn . La bibliothèque seaborn est automatiquement importée pour Python dans Excel avec l’instruction import suivante, ce qui vous permet de la référencer avec l’alias sns.
import seaborn as sns
Pour créer un tracé de paire du jeu de données sur les fleurs d’iris avec la bibliothèque seaborn, procédez comme suit :
Entrez l’extrait de code suivant dans une cellule Python dans Excel. L’extrait de code stocke le diagramme de paire sous la forme d’une variable appelée pairplot. Il crée le tracé de paires avec l’alias sns de la bibliothèque seaborn et le pairplot de la fonction seaborn.
pairplot = sns.pairplot(xl("Table1[#All]", headers=True))Comme argument en faveur de la fonction pairplot , l’extrait de code utilise la fonction Python personnalisée xl() et fait référence au premier tableau de la feuille de calcul, Table1. Il inclut l’intégralité du contenu du tableau (as [#All]), et note que le tableau inclut une ligne d’en-tête (as headers=True). Dans cet exemple, le tableau 1 de la feuille de calcul contient le jeu de données de l’iris.
Remarque
Si vous rencontrez des erreurs, consultez Résoudre les erreurs Python dans Excel pour plus d’informations.
Après avoir validé votre formule Python, Python dans Excel retourne la visualisation de tracé de paire dans un objet image. Sélectionnez l’icône de la carte dans la cellule de l’objet image pour afficher un aperçu de la visualisation.
Conservez la visualisation en tant qu’objet Image pour continuer à l’utiliser pour les calculs Python. Extrayez l’image dans la grille Excel pour la redimensionner et afficher chaque tracé plus en détail. Pour extraire l’image dans la grille, cliquez avec le bouton droit ou Ctrl+clic sur la cellule qui contient l’objet image et sélectionnez Afficher le tracé sur cellules dans le menu.
Pour plus d’informations sur l’extraction d’objets image, consultez la section Extraire un objet image dans la grille Excel de cet article.
Créer un nuage de points avec Matplotlib
Cet exemple décrit comment créer un nuage de points avec l’ensemble de données d’exemple de fleur d’iris. Un nuage de points montre la relation entre deux variables numériques dans un ensemble de données. L’exemple crée un nuage de points qui ressemble à la capture d’écran suivante, comparant les valeurs sepal_width et sepal_length .
Python dans Excel crée la visualisation avec la bibliothèque open source Matplotlib . La bibliothèque Matplotlib est automatiquement importée pour Python dans Excel avec l’instruction d’importation suivante, ce qui vous permet de la référencer en tant que plt.
import matplotlib.pyplot as plt
Pour créer un nuage de points du jeu de données sur les fleurs d’iris avec la bibliothèque Matplotlib, procédez comme suit :
Dans une cellule Python dans Excel, utilisez la fonction de nuage de points Matplotlib et entrez les colonnes sepal_length et sepal_width du jeu de données Iris comme arguments. Dans cet exemple, le tableau 1 de la feuille de calcul contient le jeu de données de l’iris.
plt.scatter(xl("Table1[sepal_length]"), xl("Table1[sepal_width]"))Ajoutez des étiquettes et un titre au nuage de points.
# Label the x and y axes of the plot.
plt.xlabel('sepal_length')
plt.ylabel('sepal_width')# Add a title to the plot.
plt.title('Sepal length and width analysis')Remarque
Vous pouvez ajouter cet extrait de code en tant que ligne de code supplémentaire après la formule Python de l’étape précédente, dans la même cellule Excel, ou vous pouvez l’entrer dans une nouvelle cellule Python dans Excel de votre classeur. Si vous choisissez de l’entrer dans une nouvelle cellule, veillez à suivre les règles de l’ordre de calcul des lignes principales et à l’entrer après la première cellule.
Après avoir validé vos formules Python, Python dans Excel retourne la visualisation de nuage de points sous la forme d’un objet image. Sélectionnez l’icône de la carte dans la cellule de l’objet image pour afficher un aperçu de la visualisation.
Remarque
Si vous rencontrez des erreurs, consultez Résoudre les erreurs Python dans Excel pour plus d’informations.
Conservez la visualisation en tant qu’objet image pour continuer à l’utiliser pour les calculs Python. Extrayez l’image dans la grille Excel pour la redimensionner et afficher le tracé plus en détail. Pour extraire l’image dans la grille, cliquez avec le bouton droit ou Ctrl+clic sur la cellule qui contient l’objet image et sélectionnez Afficher le tracé sur cellules dans le menu.
Pour plus d’informations sur l’extraction d’objets image, consultez la section Extraire un objet image dans la grille Excel de cet article.
Extraire un objet image dans la grille Excel
Comme le montrent les exemples de cet article, les bibliothèques Python telles que seaborn et Matplotlib peuvent renvoyer des visualisations de données dans des cellules Excel. Par défaut, Python dans Excel renvoie ces visualisations en tant qu’objets image.
Sélectionnez l’icône de la carte dans une cellule d’objet image pour afficher un aperçu de la visualisation.
Il existe deux façons d’extraire une image dans la grille Excel : afficher l’image sous forme de tracé sur des cellules ou afficher l’image dans une cellule.
Afficher l’image sur des cellules
Procédez comme suit pour afficher l’image sous forme de tracé sur des cellules.
Cliquez avec le bouton droit ou Ctrl+clic sur la cellule qui contient l’objet image, puis sélectionnez Afficher le tracé sur cellules dans le menu (ou utilisez le raccourci clavier Ctrl+Alt+Maj+C). Cela crée une copie de l’image qui flotte sur la grille Excel et peut être redimensionnée facilement. L’objet image d’origine reste dans la cellule d’origine.
Sélectionnez et faites glisser l’image de tracé pour la déplacer dans votre feuille de calcul. Sélectionnez et faites glisser les nœuds aux coins et sur les côtés de l’image pour la redimensionner.
Afficher l’image dans une cellule
Procédez comme suit pour afficher l’image dans une cellule.
Renvoyer l’objet image en tant que valeur Excel. Sélectionnez la cellule de l’objet image, accédez au menu de sortie Python dans la barre de formule, puis sélectionnez Valeur Excel.
L’image du tracé s’affiche désormais dans la cellule.
Conseil
Pour basculer les résultats de formule Python entre les objets Python et les valeurs Excel, utilisez le raccourci clavier Ctrl+Alt+Maj+M. Pour en savoir plus sur les raccourcis clavier, consultez Raccourcis clavier Python dans Excel.
La taille de l’image de tracé dépend de la taille de la cellule. Augmenter la taille de l’image en augmentant la taille de la cellule ou en fusionnant des cellules.
Utiliser des polices différentes pour les langues autres que l’anglais
Pour représenter des données qui utilisent des caractères de l’alphabet non latin, tels que chinois, coréen ou thaïlandais, utilisez excel.FontPath. Par défaut, Python dans Excel affiche les caractères de l’alphabet non latin sous la forme d’un carré vide (« □ »). Pour résoudre ce problème, excel.FontPath vous pouvez utiliser le excel module pour appeler une police différente et afficher les caractères.
Les polices suivantes sont disponibles. L’attribut est ajouté dans excel.FontPath votre code Python. Le chemin fait référence au fichier de police appelé par l’attribut.
| Attribut | Chemin d’accès |
|---|---|
| BENGALI | /usr/share/fonts/Vrinda.ttf |
| CHINESE_SIMPLIFIED | /usr/share/fonts/SimSun.ttf |
| CHINESE_TRADITIONAL | /usr/share/fonts/MingLiU.ttf |
| HINDI | /usr/share/fonts/Mangal.ttf |
| JAPONAIS | /usr/share/fonts/Meiryo.ttf |
| CORÉEN | /usr/share/fonts/Batang.ttf |
| THAÏLANDAIS | /usr/share/fonts/THSarabunPSK.ttf |
Utiliser Excel. FontPath pour afficher les étiquettes de tracé en chinois simplifié
La capture d’écran suivante montre un graphique avec des étiquettes de tracé en caractères chinois simplifiés à l’aide de excel.FontPath. L’exemple de code après la capture d’écran montre comment utiliser pour excel.FontPath.CHINESE_SIMPLIFIED afficher des caractères de la bibliothèque de chinois simplifié.
Exemple de code à l’aide d’Excel. FontPath (FontPath)
Cet exemple de excel.FontPath.CHINESE_SIMPLIFIED code montre comment utiliser pour générer le tracé et les caractères chinois simplifiés dans les étiquettes de tracé qui s’affichent dans la capture d’écran précédente.
-
import matplotlib.pyplot as plt
from matplotlib.font_manager import FontProperties
# Set the font path. This returns '/usr/share/fonts/simsun.ttf'.
font_path = excel.FontPath.CHINESE_SIMPLIFIED
# Point the properties to the font path.
font_properties = FontProperties(fname=font_path)
plt.rcParams['font.family'] = font_properties.get_name()
# Make the plot.
myplot = pd.DataFrame({'欧文': [1,2,3], '比尔': [1,2,3]}).plot(x='欧文')
# Show the plot.
plt.show()