免费A级毛片无码专区网站-成人国产精品视频一区二区-啊 日出水了 用力乖乖在线-国产黑色丝袜在线观看下-天天操美女夜夜操美女-日韩网站在线观看中文字幕-AV高清hd片XXX国产-亚洲av中文字字幕乱码综合-搬开女人下面使劲插视频

python-繪圖與可視化

python 有許多可視化工具,但本書只介紹Matplotlib 。Matplotlib是一種2D的繪圖庫,它可以支持硬拷貝和跨系統(tǒng)的交互,它可以在python腳本,IPython的交互環(huán)境下、Web應(yīng)用程序中使用 。該項目是由John Hunter 于2002年啟動,其目的是為python構(gòu)建MATLAB式的繪圖接口 。如果結(jié)合使用一種GUI工具包(如IPython),Matplotlib還具有諸如縮放和平移等交互功能 。它不僅支持各種操作系統(tǒng)上許多不同的GUI后端,而且還能將圖片導(dǎo)出為各種常見的矢量(vector)和光柵(raster)圖:PDF、SVG、JPG、PNG、BMP、GIF等 。
1.Matplotlib 程序包所謂“一圖勝千言”,我們很多時候需要通過可視化的方式查看、分析數(shù)據(jù),雖然pandas中也有一些繪圖操作,但是相比較而言,Matplotlib在繪圖顯示效果方面更加絢麗 。Pyplot為Matplotlib提供了一個方便的接口,我們可以通過pyplot對matplotlib進行操作,多數(shù)情況下pyplot的命令與MATLAB有些相似 。導(dǎo)入Matplotlib包進行簡單的操作(此處需要安裝pip install matplotlib):
import matplotlib.pyplot as plt#首先定義兩個函數(shù)(正弦&余弦)import numpy as npX = np.linspace(-np.pi,np.pi,256,endpoint=True)  #-Π to +Π的256個值C,S = np.cos(X),np.sin(X)plt.plot(X,C)plt.plot(X,S)#在ipython 的交互環(huán)境中需要這句才能顯示出來plt.show()

python-繪圖與可視化

文章插圖
2.繪圖命令的基本架構(gòu)及其屬性設(shè)置上面的例子我們可以看出,幾乎所有的屬性和繪圖的框架我們都選用默認(rèn)設(shè)置 ?,F(xiàn)在我們來看Pyplot 繪圖的基本框架是什么,用過photoshop的人都知道,作圖時先要定義一個畫布,此處的畫布就是Figure,然后把其他素材“畫”到該Figure上 。
(1)在Figure 上創(chuàng)建子plot,并設(shè)置屬性,具體簡析和代碼如下:
import numpy as npimport matplotlib.pyplot as pltx = np.linspace(0,10,1000)  #X軸數(shù)據(jù)y1 = np.sin(x)   #Y軸數(shù)據(jù)y2 = np.cos(x**2)  #Y軸數(shù)據(jù)plt.figure(figsize=(8,4))plt.plot(x,y1,label="$sin(x)$",color="red",linewidth=2)plt.plot(x,y2,"b--",label="$cos(x^2)$")#指定曲線的顏色和線形,如“b--”表示藍(lán)色虛線(b:藍(lán)色,-:虛線)plt.xlabel("Time(s)")plt.ylabel("Volt")plt.title("PyPlot First Example")#書上寫的是:plt.figure(figsize(8,4))#注意:會報錯  name 'figsize' is not defined#這里figsize是一個參數(shù),并不是一個函數(shù),給參數(shù)賦值中間需要加一個等號,寫為:plt.figure(figsize=(8,4))#使用關(guān)鍵字參數(shù)可以指定所繪制的曲線的各種屬性:#label:給曲線指定一個標(biāo)簽名稱,此標(biāo)簽將在圖示中顯示 。如果標(biāo)簽字符串的前后有字符“$”,則Matplotlib 會使用其內(nèi)嵌的LaTex引擎將其顯示為數(shù)學(xué)公式#color:指定曲線的顏色 。顏色可以用如下方法表示#英文單詞#以“#”字符開頭的3個16進制數(shù),如“#ff0000”表示紅色 。以0~1的RGB表示,如(1.0,0.0,0.0)也表示紅色#linewidth:指定曲線的寬度,可以不是整數(shù),也可以使用縮寫形式的參數(shù)名lwplt.ylim(-1.5,1.5)plt.legend()plt.show()
python-繪圖與可視化

文章插圖
(2)在Figure上創(chuàng)建多個子plot如果需要同時繪制多幅圖表的話,可以給Figure傳遞一個整數(shù)參數(shù)指定圖表的序號,如果所指定序號的繪圖對象已經(jīng)存在的話,將不創(chuàng)建新的對象,而只是讓它成為當(dāng)前繪圖對象,具體分析和代碼如下:
import numpy as npimport matplotlib.pyplot as pltfig1 =plt.figure(2)plt.subplot(211)#subplot(211)把繪圖區(qū)域等分為2行*1列共兩個區(qū)域#然后在區(qū)域1(上區(qū)域)中創(chuàng)建一個軸對象plt.subplot(212)#在區(qū)域2(下區(qū)域)創(chuàng)建一個軸對象plt.show()

經(jīng)驗總結(jié)擴展閱讀