在 Excel [繪圖] 和 [圖表] 中建立 Python
Excel 中的 Python 目前處於預覽階段,且可能會根據意見反應變更。 若要使用此功能,請加入 Microsoft 365 測試人員計劃 ,然後選擇目前通道 (預覽) 測試人員層級。
這項功能會逐步推出給執行目前通道的企業、商務、教育及家庭及個人使用者 (Windows 上的預覽) 。此功能會先在 Windows 版 Excel 中推出,從版本 2406 (組建 17726.20016) 開始,之後再推出至其他平臺。如需更多可用性資訊,請參閱 Excel 中的 Python 可用性 。
如果您對 Excel 中的 Python 有任何疑慮,請選取 Excel 中的 [說明 > 意見反應來回報問題。
第一次使用 Excel 中的 Python 嗎? 從 Excel 中的 Python 簡介 開始,以及 開始使用 Excel 中的 Python。
使用開放原始檔 Python 文件庫建立繪圖和圖表
Excel 中的 Python 隨附一組由 Anaconda 提供的核心 Python 文檔庫。 本文說明如何使用 Python 文件庫,例如 sea要和 matplotlib 來建立繪圖和圖表。 若要深入瞭解 Excel 中 Python 提供的開放原始碼文檔庫,請參閱 Excel 中的開放原始檔庫和 Python。
本文中的範例是使用虹膜花朵數據集。 下載此範例活頁簿,並依照以下文章進行: python-in-excel-iris-dataset.xlsx。
使用 sea 並建立配對繪圖
此範例示範如何建立虹膜花朵數據集的配對繪製視覺效果。 配對繪製是一組繪圖和圖表矩陣,可比較數據集中每個變數之間的關係。 在此情況下,虹膜花朵數據集包含四欄的數值數據: sepal_length、 sepal_width、 petal_length和 petal_width。
Excel 中的 Python 會使用 sea 圖表庫建立視覺效果。 Sea 體庫會自動匯入 Excel 中的 Python,並附上下列匯入語句,讓您以別名 sns 做為參考。
import seaborn as sns
若要使用 seairi 媒體櫃建立虹膜花朵數據集的配對繪圖,請執行下列步驟:
-
在 Excel 儲存格中的 Python 中輸入下列代碼段。 代碼段會將配對繪製儲存為稱為 pairplot 的變數。 它會使用 sea 的文件庫別名 sns 和 sea 要函數 配對plot 來建立配對繪圖。
pairplot = sns.pairplot(xl("Table1[#All]", headers=True)) 代碼代碼段做為 pairplot 函數的自變數,會使用自定義的 Python 函數 xl () ,並參照工作表 Table1 中的第一個數據表。 它包含 (為 [#All]) 的整個表格內容,以及表格包含標題列 (為 標題=True) 的附註。 在此範例中,工作表中的 Table1 包含虹膜數據集。
附註: 如果您遇到任何錯誤,請參閱 疑難解答 Excel 中的 Python 錯誤 以取得詳細資訊。
-
確認您的 Python 公式之後,Excel 中的 Python 會傳回影像物件中的配對繪製視覺效果。 選取影像物件儲存格中的卡片圖示,以查看視覺效果的預覽。
-
將視覺效果保留為影像物件,以繼續用於 Python 計算。 將影像擷取到 Excel 網格線以調整其大小,並更詳細地檢視每一個繪圖。 若要將影像擷取到方格,請以滑鼠右鍵按鍵按兩下或 Ctrl+單擊包含影像物件的儲存格,然後從功能表中選取 [ 在儲存格上方顯示繪圖]。
For additional information about extracting image objects, see the Extract an image object to the Excel grid article section in this article.
使用 Matplotlib 建立散佈圖
本範例說明如何使用虹膜花朵範例數據集建立散佈圖。 散佈圖顯示數據集中兩個數值變數之間的關係。 此範例會建立看起來像下列螢幕快照的散佈圖,比較 sepal_width 和 sepal_length 值。
Excel 中的 Python 會使用 Matplotlib開放原始碼庫建立視覺效果。 在 Excel 中針對 Python 自動匯入 Matplotlib文檔庫,並附上下列匯入語句,讓您以 plt 方式參照。
import matplotlib.pyplot as plt
若要使用 Matplotlib 文件庫建立虹膜花朵數據集的散佈圖,請採取下列步驟:
-
在 Excel 單元格的 Python 中,使用 matplotlib 散佈函數,並輸入 虹 膜數據集做為自變數的 sepal_length和sepal_width 欄。 在此範例中,工作表中的 Table1 包含虹膜數據集。
plt.scatter(xl("Table1[sepal_length]"), xl("Table1[sepal_width]")) -
在散佈圖中新增標籤和標題。
# 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')附註: 您可以在上一個步驟的 Python 公式之後,在相同的 Excel 單元格中,將此代碼段新增為額外的程式代碼行,或者也可以在活頁簿的 Excel 單元格中,在新的 Python 中輸入它。 如果您選擇在新的儲存格中輸入,請務必遵循列主要計算順序規則,並在第一個儲存格後方輸入。
-
在確認您的 Python 公式之後,Excel 中的 Python 會將散佈圖視覺效果傳回為影像物件。 選取影像物件儲存格中的卡片圖示,以查看視覺效果的預覽。
附註: 如果您遇到任何錯誤,請參閱 疑難解答 Excel 中的 Python 錯誤 以取得詳細資訊。
-
將視覺效果保留為影像物件,以繼續用於 Python 計算。 將影像擷取到 Excel 網格線以調整其大小,並更詳細地檢視繪圖。 若要將影像擷取到方格,請以滑鼠右鍵按鍵按兩下或 Ctrl+單擊包含影像物件的儲存格,然後從功能表中選取 [ 在儲存格上方顯示繪圖]。
For additional information about extracting image objects, see the Extract an image object to the Excel grid article section in this article.
將圖像物件擷取到Excel方格
如本文範例所示,seaovic 和 Matplotlib 等 Python 文檔庫可以將數據視覺效果傳回 Excel 單元格。 根據預設,Excel 中的 Python 會將這些視覺效果傳回為影像物件。
選取影像物件儲存格中的卡片圖示,以查看視覺效果的預覽。
將影像擷取至 Excel 方格的方法有兩種:將影像顯示為在儲存格上方繪製,或在儲存格內顯示影像。
在儲存格上方顯示影像
請依照下列步驟,將影像顯示為在儲存格上方繪製。
-
以滑鼠右鍵單擊或 Ctrl+單擊包含圖像物件的儲存格,然後從功能表 (選取 [在儲存格 上方顯示繪圖],或使用鍵盤快捷方式 Ctrl+Alt+Shift+C) 。 這會建立一份圖像複本,該影像會浮動在Excel網格線上,而且可以輕鬆地重設大小。 原始影像物件會保留在原始儲存格中。
-
選取並拖曳繪圖影像以在工作表中移動它。 選取並拖曳影像角落和側邊的節點,以調整其大小。
在儲存格中顯示影像
請依照下列步驟在儲存格中顯示影像。
-
將影像對象傳回為 Excel 值。 選取影像物件儲存格,移至數據編輯列中的 [Python 輸出] 選單,然後選取 [Excel 值]。
繪圖影像現在會顯示在儲存格內。提示: 若要在 Python 物件和 Excel 值之間切換 Python 公式結果,請使用鍵盤快捷方式 Ctrl+Alt+Shift+M。 若要深入了解鍵盤快捷方式,請參閱 Excel 中的 Python 鍵盤快捷方式。
-
繪製圖像的大小取決於儲存格的大小。 藉由增加儲存格大小或 合併儲存格來增加影像的大小。
建立您自己的繪圖和圖表
現在您已經瞭解如何使用範例數據集在 Excel 繪圖和圖表中建立 Python,請在 Excel 活頁簿中輸入您自己的數據,然後建立自定義視覺效果。
若要匯入外部數據以搭配 Excel 中的 Python 使用,請使用 Power Query。 若要深入瞭解,請參閱 使用 Power Query 匯入 Excel 中的 Python 數據。