Pycharm使用matplotlib警告\不能顯示的問(wèn)題及解決
問(wèn)題
在Pycharm中,使用matplotlib畫(huà)圖,警告:
MatplotlibDeprecationWarning: Support for FigureCanvases without a required_interactive_framework attribute was deprecated in Matplotlib 3.6 and will be removed two minor releases later.
與此同時(shí),畫(huà)圖要么不彈出圖像,要么圖像很小擠在右側(cè)窗口,不能很好的展示出來(lái)。

代碼警告且顯示圖像不全
解決方案
在代碼開(kāi)頭添加mpl.use('TkAgg'),結(jié)束時(shí)添加plt.show(),就可以不再發(fā)出警告,并且圖像窗口會(huì)彈出顯示。
import matplotlib as mpl
import matplotlib.pyplot as plt
mpl.use('TkAgg')
...
plt.show()也可以將mpl.use('TkAgg')用plt.switch_backend('TkAgg')替換,效果是一樣的,即:
import matplotlib.pyplot as plt
plt.switch_backend('TkAgg')
...
plt.show()‘TkAgg’是matplotlib的其中一個(gè)backend的選項(xiàng),常見(jiàn)的backend有:Qt4Agg Qt5Agg TkAgg WX WXAgg Agg Cairo GDK PS PDF SVG。
Agg:使用反走樣技術(shù)生成PNG圖像。GTK3Agg:使用GTK3庫(kù)在GTK3應(yīng)用程序中渲染繪圖。QtAgg:使用Qt庫(kù)在Qt應(yīng)用程序中渲染繪圖。WXAgg:使用wxPython庫(kù)在wxWidgets應(yīng)用程序中渲染繪圖。MacOSX:在Mac OS X系統(tǒng)中使用內(nèi)置的渲染器渲染繪圖。WebAgg:將繪圖保存為HTML頁(yè)面,可以在Web瀏覽器中查看。SVG:將繪圖保存為SVG矢量圖像。
TkAgg:

WebAgg:

注意使用mpl.use('Agg')是不能直接彈出圖片的。建議換成其他backend。
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
使用Python pyqt打造任意Excel數(shù)據(jù)庫(kù)系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了如何使用Python pyqt打造一個(gè)任意Excel數(shù)據(jù)庫(kù)系統(tǒng),可以對(duì)用戶(hù)上傳的任意電子表格Excel文件均可完成復(fù)雜數(shù)據(jù)庫(kù)查詢(xún),需要的小伙伴可以了解下2025-07-07
使用Python + Tkinter + openpyxl實(shí)現(xiàn)Excel文本化轉(zhuǎn)
在實(shí)際開(kāi)發(fā)中,我們經(jīng)常需要將 Excel 中的所有數(shù)據(jù)轉(zhuǎn)換為字符串格式,尤其是處理包含 合并單元格 的復(fù)雜表格時(shí),所以本文將介紹如何使用 Python + Tkinter + openpyxl實(shí)現(xiàn)Excel文本化轉(zhuǎn)換,需要的朋友可以參考下2025-12-12
python中isinstance()和insubclass()的實(shí)現(xiàn)
本文主要介紹了python中isinstance()和insubclass()的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2025-09-09
利用python實(shí)現(xiàn)微信頭像加紅色數(shù)字功能
通過(guò)Python實(shí)現(xiàn)將你的 QQ 頭像(或者微博頭像)右上角加上紅色的數(shù)字,類(lèi)似于微信未讀信息數(shù)量那種提示效果。下面通過(guò)本文給大家分享python實(shí)現(xiàn)微信頭像加紅色數(shù)字功能,感興趣的朋友一起看看吧2018-03-03
pd.DataFrame統(tǒng)計(jì)各列數(shù)值多少的實(shí)例
今天小編就為大家分享一篇pd.DataFrame統(tǒng)計(jì)各列數(shù)值多少的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-12-12
python使用socket高效傳輸視頻數(shù)據(jù)幀(連續(xù)發(fā)送圖片)
本文主要介紹了python使用socket高效傳輸視頻數(shù)據(jù)幀(連續(xù)發(fā)送圖片),文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-10-10
Python安裝selenium包詳細(xì)過(guò)程
在本篇文章里小編給大家整理了關(guān)于Python安裝selenium包詳細(xì)過(guò)程,需要的朋友們可以學(xué)習(xí)下。2019-07-07
python實(shí)現(xiàn)多線程行情抓取工具的方法
當(dāng)我們實(shí)現(xiàn)了單線程,接下來(lái)就是實(shí)現(xiàn)多線程了,下面這篇文章主要給大家介紹了關(guān)于python實(shí)現(xiàn)多線程行情抓取工具的方法,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。2018-02-02

