程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式師世界 >> 編程語言 >  >> 更多編程語言 >> Python

Python數據分析9——Matplotlib配置項

編輯:Python

目錄

一.Figure容器和子圖對象

Figure容器

子圖對象

Subplot

Axes

繪制雙y軸

刪除一個子圖對象

獲取一個子圖對象進行操作

二.Axis容器與多圖布局

Axis容器

 Axis介紹

設置x軸和y軸label的位置

設置刻度上的刻度格式

設置刻度對象,刻度標簽對象,刻度線

多圖布局

調整子圖間距

自定義布局


一.Figure容器和子圖對象

Figure容器

Matplotlib所繪制的圖位於圖片(Figure)對象中,我們可以通過 plt.figure() 生成一個新的圖片:

from matplotlib import pyplot as plt
fig = plt.figure()

可以通過參數 figsize 來設置畫布的大小比例:

實例:

子圖對象

Subplot

(1)plt.subplot(# 子圖位置  幾行幾列   第幾個)        創建一個或多個子圖對象;

(2)fig.add_subplot(# 子圖位置  幾行幾列   第幾個)        與上述方法效果一致,不同的是制定了figure;

實例:

設置子圖的參數時,除了使用 set 方法一起設置以外,還可通過單獨設置:

如下:

 

Axes

(1)fig.add_axes(# 原點坐標      原圖長度比例)        使用該方法創建子圖,與上述subplot有較大的不同,如下所示:

實例:

在沒有特殊要求的情況下,我們一般不使用這種方法創建子圖。

繪制雙y軸

(1)twinx()        克隆一個共用的x軸對象;

實例: 

刪除一個子圖對象

(1)fig.delaxes()

實例:

 

獲取一個子圖對象進行操作

使用 for 循環來對 fig 的 axes 進行遍歷操作;

實例:

二.Axis容器與多圖布局

Axis容器

 Axis介紹

Axis 代表的是 x 軸或者 y 軸的對象。包含 Tick(刻度)對象,TickLabel 刻度文本對象,以及 AxisLabel 坐標軸文本對象。axis 對象有一些方法可以操作刻度和文本等。

設置x軸和y軸label的位置

(1)ax1.xaxis.set_label_coords(x,y)

(2)ax1.yaxis.set_label_coords(x,y)

實例:

 

設置刻度上的刻度格式

from matplotlib import ticker
formatter = ticker.FormatStrFormatter("自定義格式")
ax1.yaxis.set_major_formatter(formatter)

實例(使y軸刻度保留兩位小數):

 

設置刻度對象,刻度標簽對象,刻度線

 

 

多圖布局

方法:subplots()

import matplotlib.pyplot as plt
fig,axes = plt.subplots(2,2)
axes[0,0].plot([1,2],[1,2])
axes[0,1].plot([1,2],[1,2])
axes[1,0].plot([1,2],[1,2])
axes[1,1].plot([1,2],[1,2])
axes[0,0].set_xlabel("x-label")
axes[0,0].set_ylabel("y-label")
axes[0,0].set_title("title")
axes[0,1].set_xlabel("x-label")
axes[0,1].set_ylabel("y-label")
axes[0,1].set_title("title")
axes[1,0].set_xlabel("x-label")
axes[1,0].set_ylabel("y-label")
axes[1,0].set_title("title")
axes[1,1].set_xlabel("x-label")
axes[1,1].set_ylabel("y-label")
axes[1,1].set_title("title")
plt.show()

實例:

 

調整子圖間距

(1)fig.subplots_adjust(left=None,bottom=None,right=None,top=None,wspace=None,hspace=None)

(2)使用上述方法:fig.tight_layout(h_pad=None,w_pad=None)

自定義布局

對於比較復雜的布局需要借助到 GridSpec對象,通過 fig.add_gridspec(2,2) 創建柵欄模式,在使用 fig.add_plot 添加子圖。

調整子圖比例時:fig.add_gridspec(2,2,width_ratios=width,height_ratios=height)


  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式師世界 All Rights Reserved