![](/img/trans.png)
[英]How do I remove matplotlib text output in Jupyter Notebook
[英]How do I make matplotlib work in AWS EMR Jupyter notebook?
這與這個問題非常接近,但我添加了一些針對我的問題的詳細信息:
使用 AWS-EMR jupyter notebook 進行 Matplotlib 繪圖
我想找到一種在我的 Jupyter 筆記本中使用 matplotlib 的方法。 這是錯誤的代碼片段,它相當簡單:
筆記本
import matplotlib
matplotlib.use("agg")
import matplotlib.pyplot as plt
plt.plot([1,2,3,4])
plt.show()
我選擇這個片段是因為當它嘗試使用 TKinter(未安裝在 AWS EMR 集群上)時,僅這一行就失敗了:
import matplotlib.pyplot as plt
當我運行完整的筆記本代碼段時,結果是沒有運行時錯誤,但也沒有任何反應(沒有顯示圖表。)我對一種可以工作的方式的理解是添加以下任一片段:
pyspark 魔術符號
%matplotlib inline
結果
unknown magic command 'matplotlib'
UnknownMagic: unknown magic command 'matplotlib'
IPython 顯式魔術調用
from IPython import get_ipython
get_ipython().run_line_magic('matplotlib', 'inline')
結果
'NoneType' object has no attribute 'run_line_magic'
Traceback (most recent call last):
AttributeError: 'NoneType' object has no attribute 'run_line_magic'
到我的筆記本,它調用一個 spark magic 命令,該命令內聯 matplotlib 圖(至少這是我的解釋。)我在使用引導操作后嘗試了這兩種方法:
EMR 引導程序
sudo pip install matplotlib
sudo pip install ipython
即使添加了這些,我仍然收到一個錯誤,即 matplotlib 沒有魔法。 所以我的問題肯定是:
題
如何使 matplotlib 在 AWS EMR Jupyter 筆記本中工作?
(或者如何在 AWS EMR Jupyter notebook 中查看圖形和繪制圖像?)
@00schneider 的答案確實有效。
import matplotlib.pyplot as plt
# plot data here
plt.show()
后
plt.show()
重新運行包含以下內容的魔法單元,您將在 AWS EMR Jupyter PySpark 筆記本上看到一個圖
%matplot plt
以下應該工作:
import matplotlib
%matplotlib inline
import matplotlib.pyplot as plt
plt.plot([1,2,3,4])
在一個單元格中運行整個腳本
要在 AWS EMR 筆記本中繪制某些內容,您只需使用%matplot plt
。 您可以在 AWS 的此頁面中間看到此文檔。
例如,如果我想快速繪制一個圖:
import matplotlib.pyplot as plt
plt.clf() #clears previous plot in EMR memory
plt.plot([1,2,3,4])
plt.show()
%matplot plt
試試下面的代碼。 僅供參考,我們在 emr-5.26.0 上的 Python3.6 中安裝了 matplotlib 3.1.1,我使用了 PySpark 內核。 確保“%matplotlib inline”是單元格中的第一行
%matplotlib inline
import matplotlib
import matplotlib.pyplot as plt
plt.plot([1,2,3,4])
plt.show()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.