| 我并不是matplotlib的新手,我很慚愧地承認我一直把它作為一種工具,盡可能快速簡便地獲得解決方案.所以我知道如何獲得基本圖,子圖和東西,并且有不少代碼可以不時重復使用……但我沒有matplotlib的“深層次知識”. 最近我想我應該改變這個并通過一些教程自己動手.但是,我仍然對matplotlibs plt,fig(ure)和ax(arr)感到困惑.真正的區(qū)別是什么? 在大多數(shù)情況下,對于一些“quick’n’dirty”繪圖,我看到人們只使用pyplot作為plt并直接用plt.plot繪圖.由于我經常使用多種東西進行繪圖,我經常使用f,axarr = plt. subplots()…但是大多數(shù)時候你只看到將數(shù)據(jù)放入axarr并忽略圖f的代碼. 所以,我的問題是:什么是使用matplotlib的干凈方式?何時僅使用plt,數(shù)字應該用于什么或應該用于什么?子圖是否只包含數(shù)據(jù)?或者,對于樣式,清理情節(jié),……,在子圖中,它是否有效且良好的做法? 我希望這不是廣泛的.基本上我要求為plt< - >的真正目的提出一些建議.無花果< - > ax(arr)(以及何時/如何正確使用它們). 教程也是受歡迎的. matplotlib文檔對我來說相當混亂.當人們搜索一些非常具體的東西時,比如重新標記一個圖例,不同的情節(jié)標記和顏色等等,官方文檔確實非常準確,但在我看來,一般信息并不是那么好.太多不同的例子,沒有真正的目的解釋……看起來或多或少像是所有可能的API方法和參數(shù)的大清單. 解決方法: pyplot是matplotlib中的“腳本級”API(它是使用matplotlib做很多事情的最高級API).它允許您使用程序界面使用matplotlib,方法與使用Matlab進行操作相似. pyplot有一個’當前數(shù)字’和’當前軸’的概念,所有功能都委托給它(@tacaswell dixit).因此,當您使用模塊pyplot上的可用功能時,您將繪制到“當前圖形”和“當前軸”. 如果你想要“細粒度”控制你正在繪制的位置/什么,那么你應該使用圖形和軸的實例來使用面向對象的API. pyplot中可用的函數(shù)在Axes中具有等效方法. 來自repo anatomy of matplotlib: >圖是此層次結構中的頂級容器.這是整個窗口/頁面,所有內容都是繪制的.您可以擁有多個獨立的數(shù)字,數(shù)字可以包含多個軸. 但… >大多數(shù)繪圖都發(fā)生在Axes上.軸實際上是我們繪制數(shù)據(jù)的區(qū)域以及與之相關的任何刻度/標簽/等.通常我們將設置一個Axes,調用subplot(將Axes置于常規(guī)網格上),因此在大多數(shù)情況下,Axes和Subplot是同義詞. 如果你想知道情節(jié)的解剖,你可以訪問這個<a href="http://nbviewer./github/WeatherGod/AnatomyOfMatplotlib/blob/master/AnatomyOfMatplotlib-Part1-Figures_Subplots_and_layouts.ipynb#Anatomy-of-a-" plot" rel="noreferrer">link. | 
|  |