1. 程式人生 > >資料視覺化入門篇-matplotlib第一講-figure影象介紹

資料視覺化入門篇-matplotlib第一講-figure影象介紹

一.安裝對應的庫
在使用之前需要確保安裝matplotlib和numpy庫,本文是基於python3版本進行,所以使用前請確保您的版本是python3版本(由於官網停止了對python2的更新,建議花費點而時間安裝python3)。
小xing在這裡將matplotlib的安裝都整理到了百度雲盤連結:https://pan.baidu.com/s/1iA_bfRv8SlfkpyKt06z-AQ 密碼:r3ui
numpy庫直接使用命令

pip3 install numpy

安裝即可;matplotlib需要在官網(http://pypi.python.org/pypi/matplotlib/

)進行下載包,直接使用cmd命令安裝即可.
figure(title,size…….)其中具體引數可參見官網介紹或百度。

二.figure函式畫圖的基本命令

import matplotlib.pyplot as plt
import numpy as np

#定義x的取值範圍從-1到1,取50個點;
x=np.linspace(-1,1,50)
#函式表示式
y1 = 3*x+6
y2 = x**2

#產生多個figure,plot函式畫曲線
plt.figure()
plt.plot(x,y1,color='red',linewidth=2.3,linestyle='--')

plt.figure()
plt.plot(x,y2)

#show()函式呈現函式影象
plt.show()

注:如果需要將兩張圖合併到一張圖上,只需要在程式碼中對應的figure()函式下新增相應的plot()函式即可。由於小編之前接觸MATLAB比較頻繁,經過小編反覆觀察竟發現matplotlib與MATLAB如此類似,而且MATLAB有許多參考書籍,如果大家感興趣,可以先嚐試一下MATLAB.

三.修改座標軸資訊
函式xlim(),xlabel()分別是對座標軸的範圍和名稱進行修改。
xticks()則是分別對刻度進行修改,正則化在此也能表現出較好功能,不過使用函式相對比較簡單。程式如下;

import matplotlib.pyplot as plt
import numpy as np

#定義x的取值範圍從-1到50,步長為1;
x=np.linspace(-2,2,50) #函式表示式 y2 = x**2 #產生figure,plot函式畫曲線 plt.figure() plt.plot(x,y2) #修改x,y軸的範圍和名稱,注意python中名稱只能識別英文 plt.xlim((-2,2)) plt.ylim((-2,2)) plt.xlabel('x') plt.ylabel('y') #修改座標的刻度名稱 new_ticks=np.linespace(-2,2,10) plt.yticks(new_ticks) plt.xticks([-1,-0.5,1,1.5,2],['$one$','$two$','$three$','$four$']) #show()函式呈現函式影象 plt.show()

四.修改座標軸的位置
4.1.將右邊和上邊的座標軸去掉,

nx = plt.gca()

#將右邊和上邊的座標線去掉
nx.spines['right'].set_color('none')
nx.spines['top'].set_color('none')

4.2.將左邊和下面的座標軸移動到指定位置

#移動座標軸,將spines選中的座標軸放到指定的set_position的位置
nx.spines['bottom'].set_position(('data',0))
nx.spines['left'].set_position(('data',0))

4.3 將座標刻度移動到指定位置
在此座標刻度在不修改的情況下,預設為隨著座標軸的一定而移動,一般情況下可以不考慮。

#選擇刻度移動位置
nx.xaxis.set_ticks_position('bottom')
nx.yaxis.set_ticks_position('left')

4.5 設定圖例

#設定圖例
plt.figure()
l1, = plt.plot(x,y1,color='red',linestyle='--')
l2, = plt.plot(x,y2,color='blue')
plt.legend(handles=[l1,l2],labels=['lin','fin'],loc='best')

修改座標的完整程式碼:

import matplotlib.pyplot as plt
import numpy as np

#定義x的取值範圍從-1到50,步長為1;
x=np.linspace(-2,2,50)
#函式表示式
y2 = x**2

plt.figure(1)
plt.plot(x,y2)

#修改x,y軸的範圍和名稱,注意python中名稱只能識別英文
plt.xlim((-2,2))
plt.ylim((-2,3))
plt.xlabel('x')
plt.ylabel('y')
#修改座標軸位置
nx = plt.gca()

#將右邊和上邊的座標線去掉
nx.spines['right'].set_color('none')
nx.spines['top'].set_color('none')

#移動座標軸,將spines選中的座標軸放到指定的set_position的位置
nx.spines['bottom'].set_position(('data',0))
nx.spines['left'].set_position(('data',0))
#show()函式呈現函式影象

六.總結
由於此篇為小xing第一篇以第一作者發表的文章,如若存在錯誤,歡迎大家留言給予改正,同時也歡迎小白一起學習,共同進步。