日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 編程語言 正文

Python中figure與axies繪圖有哪些不同_python

作者:霄耀在努力 ? 更新時間: 2023-04-10 編程語言

一、二者區別介紹

學習別人寫的代碼時,關于使用matplotlib繪圖單面,有多種實現方式,什么plt.plot 啦,ax.plot 啦,雖然都能實現繪圖的目的,但總是感覺掌握的不踏實,今天就來總結一下。

matplotlib圖的組成:

  • Figure (畫布,可理解為黑板)
  • Axes (坐標系,黑板中的一塊區域)
  • Axis (坐標軸,在區域中畫的坐標軸)
  • 圖形(plot(),scatter(),bar(),...)
  • Title, Labels, ......

借助官方文檔中的一幅圖:

現在就能清楚Figure、Axes、Axis是什么關系了吧

其實我們還能簡單的將Axes理解為Figure的子圖,Figure是由一個或多個Axes組成,當只有一個子圖時,那這時主圖和子圖就是完全一樣的啦 那么plt.plot() 和ax.plot() 效果也就一樣

在來看一個圖:

整個灰色區域,也就是紅框之內的區域是一個Figure, 三個白色區域(子圖)是三個Axes,藍框是Axis

此外,這種類型的圖可以用以下程序實現

fig = plt.figure(figsize=(10, 5))
for i, file in enumerate(file_list):          
     img = Image.open(file)
     print('Image shape: ', np.array(img).shape)
     ax = fig.add_subplot(2, 3, i + 1)          #  通過索引號index,設置AXES位置
     ax.set_xticks([]);
     ax.set_yticks([])
     ax.imshow(img)  
plt.tight_layout()                              # 自動調整子圖參數,使之填充整個圖像區域
plt.show()

二、對應的程序

創建

plt.figure()返回Figure實例
plt.axes()返回Axes或其子類

常用程序

plt.plot() ? ?———— ? ?ax.plot() ? ? ? ? ? ?# 繪制
plt.legend() ?———— ? ?ax.legend() ? ? ? ? ?#添加圖例
plt.xlabel() ?———— ? ?ax.set_xlabel() ? ? ?#設置x軸標題
plt.ylabel() ?———— ? ?ax.set_ylabel() ? ? ?
plt.xlim() ? ?———— ? ?ax.set_xlim() ? ? ? ?#獲取或者是設定x座標軸的范圍
plt.ylim() ? ?———— ? ?ax.set_ylim()
plt.title() ? ———— ? ?ax.set_title() ? ? ? #設置標題

原文鏈接:https://blog.csdn.net/m0_59113542/article/details/128877107

欄目分類
最近更新