1. 程式人生 > >Python 作圖之Matplotlib(一)

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

)為1.0;曲線的型別(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.(所有位置:topbottombothdefaultnone

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.(所有位置:leftrightbothdefaultnone

ax.yaxis.set_ticks_position('left')

使用.spines設定邊框:y軸;使用.set_position設定邊框位置:x=0的位置;(位置所有屬性:outwardaxesdata) 使用plt.show顯示影象.

ax.spines['left'].set_position(('data',0))
plt.show()