jupyter notebook 實(shí)現(xiàn)matplotlib圖動(dòng)態(tài)刷新
我就廢話不多說了,大家還是直接看代碼吧!
import matplotlib %matplotlib inline from IPython import display
需要刷新的地方,畫完圖之后添加
display.clear_output(wait=True)
補(bǔ)充知識(shí):jupyter notebook matplotlib繪制動(dòng)態(tài)圖并顯示在notebook中
有些時(shí)候matplotlib 的繪圖沒法顯示在notebook中,或者顯示不了。這與backend有關(guān)。
首先啟動(dòng)你的notebook,輸入
%pylab
查看你的matplotlib后端,我的輸出為:
Qt5Agg
這是后端的渲染方式,使用的是qt5渲染。激活方式為在繪圖之前插入代碼段:
%matplotlib qt5
這樣就能顯示出圖,但是是顯示在notebook之外的,如果我使用%matplotlib inline,圖的顯示并不正常。我也不知道為什么,,,,,,,,,,,,,
如果你輸出的后端為其他類型,建議查看下面的資料,直接輸入對(duì)應(yīng)的繪圖激活方式。
補(bǔ)充知識(shí):matplotlib 常用backend
matplotlib 使用簡(jiǎn)明教程(一)-基礎(chǔ)概念
Matplotlib 是一個(gè)用于繪制圖表的 Python 庫,可以用來處理圖片、繪制統(tǒng)計(jì)類的圖表。
本文分為幾篇,主要目的在于說明 Matplotlib 的一些使用方法。第一篇用于介紹 Matplotlib 的一些基本概念。
基本組成
以官網(wǎng)中圖片說明 Matplotlib 圖表中的基本組成成分。
figure:整個(gè)畫布,包含一個(gè)或多個(gè) axes
axes:畫布中的某一個(gè)圖表,包含一個(gè) plot
artist:元素,包括圖中所示的 label、line 等,也包括 plot
backend
每一種輸出的能力都叫做一種 backend,在我的理解中有點(diǎn)類似渲染器。
IPython 中的魔法語句 %matplotlib xxxx 就是選擇 backend。
選用哪種 backend,其優(yōu)先級(jí)選取如下:
matplotlibrc 文件中的 backend
使用 MPLBACKEND 環(huán)境變量
使用 matplotlib.use() 函數(shù),需要在導(dǎo)入 pyplot 前使用
backend 從種類上,分為可交互型(user interface)和不可交互型兩種(hardcopy),如果希望查看本地支持的 backend 有哪些,可以使用
matplotlib.rcsetup.interactive_bk # 可交互型 matplotlib.rcsetup.non_interactive_bk # 不可交互型 matplotlib.rcsetup.all_backends # 所有 backend
獲取當(dāng)前的 backend 可以使用 matplotlib.pyplot.get_backend()
常用 backend 已在文尾附上。
交互模式
我理解,“交互模式”即代表著這個(gè)圖標(biāo)在繪制后可以動(dòng)態(tài)變化,例如預(yù)設(shè)的動(dòng)畫以及用戶的操作。
當(dāng)開啟交互模式后,繪制的圖表會(huì)自動(dòng)更新、繪制,如果希望手動(dòng)更新圖表,則使用 draw() 函數(shù);而在非交互模式下,當(dāng)所有后臺(tái)繪制完成后,需要使用 show() 函數(shù),才會(huì)將最終圖表展示出來。
如果希望使用交互模式,需要選用可交互型的 backend。
通過 matplotlib.interactive() 設(shè)置交互模式的開啟與關(guān)閉
通過 matplotlib.is_interactive() 查詢當(dāng)前實(shí)發(fā)支持交互模式
也可以通過 matplotlib.pyplot.ion() 和 matplotlib.pyplot.ioff() 來開啟/關(guān)閉交互模式
附:常用 backend
不可交互型
AGG:渲染為 png 文件
PS:渲染為 ps 文件
PDF:渲染為 pdf 文件
SVG:渲染為 svg 文件
Cairo:使用 Cairo 引擎渲染
可交互型
Qt5Agg:使用 Qt5 渲染,IPython 中可使用 %matplotlib qt5
Qt4Agg:使用 Qt4 渲染,IPython 中可使用 %matplotlib qt4
ipympl:使用 ipympl 庫,Ipython 中可使用 %matplotlib ipympl
macosx:使用 Cocoa 畫布渲染,Ipython 中可使用 %matplotlib osx
nbAgg:Jupyter Notebook 中使用的 backend,Jupyter 中使用 %matplotlib notebook 來激活
WXAgg:使用 wxWidgets 庫來渲染,Ipython 中可使用 %matplotlib wx
inline:嚴(yán)格地講并不是一個(gè) backend,這個(gè) IPython 中的一個(gè)語法,表示把圖表嵌入筆記中,使用 %matplotlib inline
以上這篇jupyter notebook 實(shí)現(xiàn)matplotlib圖動(dòng)態(tài)刷新就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
python sort、sort_index方法代碼實(shí)例
這篇文章主要介紹了python sort、sort_index方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-03-03Python使用flask作為web服務(wù)器的代碼實(shí)現(xiàn)
Python Flask 框架是一個(gè)輕量級(jí)的 Web 框架,它簡(jiǎn)單易用,靈活多變,非常適合用于構(gòu)建小型到中型規(guī)模的 Web 應(yīng)用程序,本文給大家介紹了Python使用flask作為web服務(wù)器的代碼實(shí)現(xiàn),需要的朋友可以參考下2024-06-06Python 實(shí)現(xiàn)遙感影像波段組合的示例代碼
這篇文章主要介紹了Python 實(shí)現(xiàn)遙感影像波段組合的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-08-08python Pandas庫基礎(chǔ)分析之時(shí)間序列的處理詳解
這篇文章主要介紹了python Pandas庫基礎(chǔ)分析之時(shí)間序列的處理詳解,Pandas作為Python環(huán)境下的數(shù)據(jù)分析庫,更是提供了強(qiáng)大的日期數(shù)據(jù)處理的功能,是處理時(shí)間序列的利器,需要的朋友可以參考下2019-07-07Python實(shí)現(xiàn)插入排序和選擇排序的方法
這篇文章主要介紹了Python實(shí)現(xiàn)插入排序和選擇排序的方法,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-05-05對(duì)python插入數(shù)據(jù)庫和生成插入sql的示例講解
今天小編就為大家分享一篇對(duì)python插入數(shù)據(jù)庫和生成插入sql的示例講解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-11-11用python獲取txt文件中關(guān)鍵字的數(shù)量
這篇文章主要介紹了如何用python獲取txt文件中關(guān)鍵字的數(shù)量,幫助大家更好的理解和使用python,感興趣的朋友可以了解下2020-12-12將Python中的數(shù)據(jù)存儲(chǔ)到系統(tǒng)本地的簡(jiǎn)單方法
這篇文章主要介紹了將Python中的數(shù)據(jù)存儲(chǔ)到系統(tǒng)本地的簡(jiǎn)單方法,主要使用了pickle模塊,需要的朋友可以參考下2015-04-04