Weitere Informationen zur Verfügbarkeit finden Sie unter Verfügbarkeit von Python in Excel. Sollten Probleme mit Python in Excel auftreten, melden Sie uns diese über "Hilfe>" Feedback in Excel.
Sind Sie noch nicht mit Python in Excel vertraut? Beginnen Sie mit Einführung in Python in Excel und Erste Schritte mit Python in Excel.
Verwenden Sie Open-Source-Python-Bibliotheken, um Plots und Diagramme zu erstellen
Python in Excel verfügt über einen Kernsatz von Python-Bibliotheken, die von Anaconda bereitgestellt werden. In diesem Artikel wird beschrieben, wie Sie Python-Bibliotheken wie seaborn und Matplotlib verwenden, um Plots und Diagramme zu erstellen. Weitere Informationen zu den mit Python in Excel verfügbaren Open-Source-Bibliotheken finden Sie unter Open-Source-Bibliotheken und Python in Excel.
In den Beispielen in diesem Artikel wird der Irisblüten-Datensatz verwendet. Laden Sie diese Beispielarbeitsmappe herunter, um dem folgenden Artikel zu folgen: python-in-excel-iris-dataset.xlsx.
Erstellen Sie einen Paarplot mit seaborn
Dieses Beispiel zeigt, wie Sie eine Paarplot-Visualisierung des Irisblüten-Datensatzes erstellen. Ein Paardiagramm ist eine Matrix aus Diagrammen und Plots, die die Beziehung zwischen den einzelnen Variablen in einem Datensatz vergleicht. In diesem Fall enthält das Irisblüten-Dataset vier Spalten mit numerischen Daten: sepal_length, sepal_width, petal_length und petal_width.
Python in Excel erstellt die Visualisierung mit der seaborn-Bibliothek . Die seaborn-Bibliothek wird automatisch für Python in Excel mit der folgenden Importanweisung importiert, sodass Sie mit dem Alias sns darauf verweisen können.
import seaborn as sns
Führen Sie die folgenden Schritte aus, um ein Paardiagramm des Irisblüten-Datensatzes mit der seaborn-Bibliothek zu erstellen:
Geben Sie den folgenden Codeausschnitt in eine Python in Excel-Zelle ein. Der Codeausschnitt speichert den Paarplot als Variable namens Pairplot. Sie erstellt das Paardiagramm mit dem seaborn-Bibliotheksalias sns und der seaborn-Funktion pairplot.
pairplot = sns.pairplot(xl("Table1[#All]", headers=True))Als Argument für die Pairplot-Funktion verwendet das Code-Snippet die benutzerdefinierte Python-Funktion xl() und verweist auf die erste Tabelle im Arbeitsblatt, Table1. Sie enthält den gesamten Tabelleninhalt (als [#All]) und stellt fest, dass die Tabelle eine Überschriftenzeile enthält (as headers=True)). In diesem Beispiel enthält Tabelle1 im Arbeitsblatt das Iris-Dataset.
Hinweis
Wenn Fehler auftreten, finden Sie weitere Informationen unter Fehlerbehebung für Python in Excel .
Nachdem Sie Ihre Python-Formel festgelegt haben, gibt Python in Excel die Paarplotvisualisierung in einem Bildobjekt zurück. Wählen Sie das Karten-Symbol in der Bildobjektzelle aus, um eine Vorschau der Visualisierung anzuzeigen.
Behalten Sie die Visualisierung als Image-Objekt bei, um sie weiterhin für Python-Berechnungen zu verwenden. Extrahieren Sie das Bild in das Excel-Raster, um die Größe zu ändern und die einzelnen Diagramme detaillierter anzuzeigen. Um das Bild in das Raster zu extrahieren, klicken Sie mit der rechten Maustaste oder Strg+Klick auf die Zelle, die das Bildobjekt enthält, und wählen Sie im Menü die Option Plot über Zellen anzeigen aus.
Weitere Informationen zum Extrahieren von Bildobjekten finden Sie im Artikel Extrahieren eines Bildobjekts in das Excel-Raster in diesem Artikel.
Erstellen eines Punktdiagramms mit Matplotlib
In diesem Beispiel wird beschrieben, wie Sie ein Punktdiagramm mit dem Irisblütenbeispieldatensatz erstellen. Ein Punktdiagramm zeigt die Beziehung zwischen zwei numerischen Variablen in einem Datensatz. Im Beispiel wird ein Punktdiagramm erstellt, das wie im folgenden Screenshot aussieht und die sepal_width - und sepal_length-Werte vergleicht.
Python in Excel erstellt die Visualisierung mit der Open-Source-Bibliothek Matplotlib . Die Matplotlib-Bibliothek wird automatisch für Python in Excel mit der folgenden Importanweisung importiert, sodass Sie sie als plt referenzieren können.
import matplotlib.pyplot as plt
Führen Sie die folgenden Schritte aus, um ein Punktdiagramm des Irisblütendatensatzes mit der Matplotlib-Bibliothek zu erstellen:
Verwenden Sie in einer Python in Excel-Zelle die Matplotlib-Punktfunktion , und geben Sie die Spalten sepal_length und sepal_width des Iris-Datensatzes als Argumente ein. In diesem Beispiel enthält Tabelle1 im Arbeitsblatt das Iris-Dataset.
plt.scatter(xl("Table1[sepal_length]"), xl("Table1[sepal_width]"))Fügen Sie dem Punktdiagramm Bezeichnungen und einen Titel hinzu.
# 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')Hinweis
Sie können diesen Codeausschnitt als zusätzliche Codezeile nach der Python-Formel im vorherigen Schritt in derselben Excel-Zelle hinzufügen oder ihn in eine neue Python in Excel-Zelle in Ihrer Arbeitsmappe eingeben. Wenn Sie den Cursor in eine neue Zelle eingeben möchten, müssen Sie die Regeln für die zeilenweise Berechnungsreihenfolge befolgen und ihn nach der ersten Zelle eingeben.
Nachdem Sie Ihre Python-Formeln festgelegt haben, gibt Python in Excel die Streudiagrammvisualisierung als Bildobjekt zurück. Wählen Sie das Karten-Symbol in der Bildobjektzelle aus, um eine Vorschau der Visualisierung anzuzeigen.
Hinweis
Wenn Fehler auftreten, finden Sie weitere Informationen unter Fehlerbehebung für Python in Excel .
Behalten Sie die Visualisierung als Bildobjekt bei, um sie weiterhin für Python-Berechnungen zu verwenden. Extrahieren Sie das Bild in das Excel-Raster, um die Größe zu ändern und das Diagramm detaillierter anzuzeigen. Um das Bild in das Raster zu extrahieren, klicken Sie mit der rechten Maustaste oder Strg+Klick auf die Zelle, die das Bildobjekt enthält, und wählen Sie im Menü die Option Plot über Zellen anzeigen aus.
Weitere Informationen zum Extrahieren von Bildobjekten finden Sie im Artikel Extrahieren eines Bildobjekts in das Excel-Raster in diesem Artikel.
Extrahieren eines Bildobjekts in die Excel-Tabelle
Wie die Beispiele in diesem Artikel zeigen, können Python-Bibliotheken wie seaborn und Matplotlib Datenvisualisierungen an Excel-Zellen zurückgeben. Standardmäßig gibt Python in Excel diese Visualisierungen als Bildobjekte zurück.
Wählen Sie das Karten-Symbol in einer Bildobjektzelle aus, um eine Vorschau der Visualisierung anzuzeigen.
Es gibt zwei Möglichkeiten, ein Bild im Excel-Raster zu extrahieren: das Bild als Diagramm über Zellen anzeigen oder das Bild in einer Zelle anzeigen.
Bild über Zellen anzeigen
Führen Sie die folgenden Schritte aus, um das Bild als Plot über Zellen anzuzeigen.
Klicken Sie mit der rechten Maustaste oder Strg+Klick auf die Zelle, die das Bildobjekt enthält, und wählen Sie im Menü Plot über Zellen anzeigen aus (oder verwenden Sie die Tastenkombination Strg+Alt+Umschalt+C). Dadurch wird eine Kopie des Bilds erstellt, die über dem Excel-Raster schwebt und in der Größe leicht geändert werden kann. Das ursprüngliche Bildobjekt verbleibt in der ursprünglichen Zelle.
Wählen Sie das Plotbild aus, und ziehen Sie es, um es in Ihrem Arbeitsblatt zu verschieben. Wählen Sie die Knoten an den Ecken und Seiten des Bilds aus, und ziehen Sie sie, um die Größe zu ändern.
Anzeigen des Bilds in einer Zelle
Führen Sie die folgenden Schritte aus, um das Bild in einer Zelle anzuzeigen.
Geben Sie das Bildobjekt als Excel-Wert zurück. Wählen Sie die Bildobjektzelle aus, wechseln Sie zum Python-Ausgabemenü in der Bearbeitungsleiste, und wählen Sie Excel-Wert aus.
Das Plotbild wird nun innerhalb der Zelle angezeigt.
Tipp
Verwenden Sie die Tastenkombination STRG+ALT+UMSCHALT+M, um die Ergebnisse von Python-Formeln zwischen Python-Objekten und Excel-Werten umzuschalten. Weitere Informationen zu Tastenkombinationen finden Sie unter Tastenkombinationen für Python in Excel.
Die Größe des Diagrammbilds hängt von der Größe der Zelle ab. Vergrößern Sie das Bild, indem Sie die Zelle vergrößern oder Zellen zusammenführen.
Verwenden unterschiedlicher Schriftarten für nicht englische Sprachen
Um Daten darzustellen, die nicht lateinische Buchstaben verwenden, wie z. B. Chinesisch, Koreanisch oder Thai, verwenden Sie excel.FontPath. Standardmäßig rendert Python in Excel Zeichen des nicht-lateinischen Alphabets als leeres Quadrat ("□"). Um dieses Problem zu beheben, können Sie mithilfe des excel Moduls excel.FontPath eine andere Schriftart aufrufen und die Zeichen rendern.
Die folgenden Schriftarten sind verfügbar. Das Attribut wird in Ihrem Python-Code angehängt excel.FontPath . Der Pfad bezieht sich auf die Schriftartdatei, die vom Attribut aufgerufen wird.
| Attribut | Pfad |
|---|---|
| BENGALISCH | /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 |
| JAPANISCH | /usr/share/fonts/Meiryo.ttf |
| KOREANISCH | /usr/share/fonts/Batang.ttf |
| THAILÄNDISCH | /usr/share/fonts/THSarabunPSK.ttf |
Verwenden Sie Excel. FontPath zum Anzeigen vereinfachter chinesischer Plotbeschriftungen
Der folgende Screenshot zeigt ein Diagramm mit Plotbeschriftungen in vereinfachtem Chinesisch unter Verwendung von excel.FontPath. Das Codebeispiel nach dem Screenshot zeigt, excel.FontPath.CHINESE_SIMPLIFIED wie Zeichen aus der Bibliothek für vereinfachtes Chinesisch angezeigt werden.
Codebeispiel mit Excel. FontPath
In diesem Codebeispiel wird gezeigt, wie Sie das Plot und die vereinfachten chinesischen Zeichen in den Plotbeschriftungen generieren excel.FontPath.CHINESE_SIMPLIFIED , die im vorherigen Screenshot angezeigt werden.
-
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()