Python 作圖之Matplotlib(一)
基本用法
import matplotlib.pyplot as plt
import numpy as npx = np.linspace(-3, 3, 50)
x = np.linspace(-3, 3, 50)
y1 = 2*x + 1
y2 = x**2
plt.figure()
plt.plot(x, y)
plt.show()
設定樣式
使用plt.figure
定義一個影象視窗:編號為3;大小為(8, 5). 使用plt.plot
畫(x
,y2
)曲線. 使用plt.plot
畫(x
,y1
)曲線,曲線的顏色屬性(color
)為紅色;曲線的寬度(linewidth
linestyle
)為虛線. 使用plt.show
顯示影象
plt.figure(num=3, figsize=(8, 5),)
plt.plot(x, y2)
plt.plot(x, y1, color='red', linewidth=1.0, linestyle='--')
plt.show()
修改座標軸(1)
使用plt.xlim
設定x座標軸範圍:(-1, 2); 使用plt.ylim
設定y座標軸範圍:(-2, 3); 使用plt.xlabel
設定x座標軸名稱:’I am x’; 使用plt.ylabel
設定y座標軸名稱:’I am y’;
plt.xlim((-1, 2)) plt.ylim((-2, 3)) plt.xlabel('I am x') plt.ylabel('I am y') plt.show()
使用np.linspace
定義範圍以及個數:範圍是(-1,2);個數是5. 使用print
打印出新定義的範圍. 使用plt.xticks
設定x軸刻度:範圍是(-1,2);個數是5.
new_ticks = np.linspace(-1, 2, 5)
print(new_ticks)
plt.xticks(new_ticks)
使用plt.yticks
設定y軸刻度以及名稱:刻度為[-2, -1.8, -1, 1.22, 3];對應刻度的名稱為[‘really bad’,’bad’,’normal’,’good’, ‘really good’]. 使用plt.show
顯示影象.
plt.yticks([-2, -1.8, -1, 1.22, 3],[r'$really\ bad$', r'$bad$', r'$normal$', r'$good$', r'$really\ good$']) plt.show()
修改座標軸(2)
使用plt.gca
獲取當前座標軸資訊. 使用.spines
設定邊框:右側邊框;使用.set_color
設定邊框顏色:預設白色; 使用.spines
設定邊框:上邊框;使用.set_color
設定邊框顏色:預設白色;
ax = plt.gca()
ax.spines['right'].set_color('none')
ax.spines['top'].set_color('none')
plt.show()
使用.xaxis.set_ticks_position
設定x座標刻度數字或名稱的位置:bottom
.(所有位置:top
,bottom
,both
,default
,none
)
ax.xaxis.set_ticks_position('bottom')
使用
.spines
設定邊框:x軸;使用
.set_position
設定邊框位置:y=0的位置;(位置所有屬性:
outward
,
axes
,
data
)
ax.spines['bottom'].set_position(('data', 0))
plt.show()
使用.yaxis.set_ticks_position
設定y座標刻度數字或名稱的位置:left
.(所有位置:left
,right
,both
,default
,none
)
ax.yaxis.set_ticks_position('left')
使用.spines
設定邊框:y軸;使用.set_position
設定邊框位置:x=0的位置;(位置所有屬性:outward
,axes
,data
) 使用plt.show
顯示影象.
ax.spines['left'].set_position(('data',0))
plt.show()