版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
Python的繪圖庫matplotlib快速入門1ppt課件Python的繪圖庫matplotlib快速入門1ppt課件Matplotlib—繪制精美的圖表2ppt課件Matplotlib—繪制精美的圖表2ppt課件matplotlib是python最著名的繪圖庫,它提供了一整套和matlab相似的命令API,十分適合交互式地進行制圖。而且也可以方便地將它作為繪圖控件,嵌入GUI應用程序中。它的文檔相當完備,并且Gallery頁面中有上百幅縮略圖,打開之后都有源程序。因此如果你需要繪制某種類型的圖,只需要在這個頁面中瀏覽/復制/粘貼一下,基本上都能搞定。
展示頁面的地址:/gallery.html3ppt課件matplotlib是python最著快速繪圖快速繪圖matplotlib的pyplot子庫提供了和matlab類似的繪圖API,方便用戶快速繪制2D圖表。(matplotlib_simple_plot.py)
pylab模塊matplotlib還提供了名為pylab的模塊,其中包括了許多numpy和pyplot中常用的函數(shù),方便用戶快速進行計算和繪圖,可以用于IPython中的快速交互式使用。
4ppt課件快速繪圖快速繪圖4ppt課件快速繪圖matplotlib中的快速繪圖的函數(shù)庫可以通過如下語句載入:接下來調(diào)用figure創(chuàng)建一個繪圖對象,并且使它成為當前的繪圖對象。通過figsize參數(shù)可以指定繪圖對象的寬度和高度,單位為英寸;dpi參數(shù)指定繪圖對象的分辨率,即每英寸多少個像素,缺省值為80。因此本例中所創(chuàng)建的圖表窗口的寬度為8*80=640像素。importmatplotlib.pyplotaspltplt.figure(figsize=(8,4))5ppt課件快速繪圖matplotlib中的快速繪圖快速繪圖也可以不創(chuàng)建繪圖對象直接調(diào)用接下來的plot函數(shù)直接繪圖,matplotlib會自動創(chuàng)建一個繪圖對象。
如果需要同時繪制多幅圖表的話,可以是給figure傳遞一個整數(shù)參數(shù)指定圖標的序號,如果所指定序號的繪圖對象已經(jīng)存在的話,將不創(chuàng)建新的對象,而只是讓它成為當前繪圖對象。下面的兩行程序通過調(diào)用plot函數(shù)在當前的繪圖對象中進行繪圖:plt.plot(x,y,label="$sin(x)$",color="red",linewidth=2)plt.plot(x,z,"b--",label="$cos(x^2)$")6ppt課件快速繪圖也可以不創(chuàng)建繪圖對象直接調(diào)用接下快速繪圖plot函數(shù)的調(diào)用方式很靈活,第一句將x,y數(shù)組傳遞給plot之后,用關(guān)鍵字參數(shù)指定各種屬性:?label:給所繪制的曲線一個名字,此名字在圖示(legend)中顯示。只要在字符串前后添加''$''符號,matplotlib就會使用其內(nèi)嵌的latex引擎繪制的數(shù)學公式。?color:指定曲線的顏色?linewidth:指定曲線的寬度第三個參數(shù)‘’b--``指定曲線的顏色和線型plt.plot(x,y,label="$sin(x)$",color="red",linewidth=2)plt.plot(x,z,"b--",label="$cos(x^2)$“)7ppt課件快速繪圖plt.plot(x,y,label="$sin(x快速繪圖接下來通過一系列函數(shù)設(shè)置繪圖對象的各個屬性:?xlabel/ylabel:設(shè)置X軸/Y軸的文字?title:設(shè)置圖表的標題?ylim:設(shè)置Y軸的范圍?legend:顯示圖示最后調(diào)用plt.show()顯示出創(chuàng)建的所有繪圖對象。plt.xlabel("Time(s)")plt.ylabel("Volt")plt.title("PyPlotFirstExample")plt.ylim(-1.2,1.2)plt.legend()8ppt課件快速繪圖接下來通過一系列函數(shù)設(shè)置繪圖對象快速繪圖
importnumpyasnpimportmatplotlib.pyplotasplt
x=np.linspace(0,10,1000)y=np.sin(x)z=np.cos(x**2)
plt.figure(figsize=(8,4))plt.plot(x,y,label="$sin(x)$",color="red",linewidth=2)plt.plot(x,z,"b--",label="$cos(x^2)$")plt.xlabel("Time(s)")plt.ylabel("Volt")plt.title("PyPlotFirstExample")plt.ylim(-1.2,1.2)plt.legend()plt.show()9ppt課件快速繪圖importnumpyasnp9ppt課件快速繪圖10ppt課件快速繪圖10ppt課件快速繪圖
還可以調(diào)用plt.savefig()將當前的Figure對象保存成圖像文件,圖像格式由圖像文件的擴展名決定。下面的程序?qū)斍暗膱D表保存為“test.png”,并且通過dpi參數(shù)指定圖像的分辨率為120,因此輸出圖像的寬度為“8X120=960”個像素。
實際上不需要調(diào)用show()顯示圖表,可以直接用savefig()將圖表保存成圖像文件.使用這種方法可以很容易編寫出批量輸出圖表的程序.runmatplotlib_simple_plot.pyplt.savefig("test.png",dpi=120)11ppt課件快速繪圖還可以調(diào)用plt.savefig(快速繪圖繪制多軸圖一個繪圖對象(figure)可以包含多個軸(axis),在Matplotlib中用軸表示一個繪圖區(qū)域,可以將其理解為子圖。上面的第一個例子中,繪圖對象只包括一個軸,因此只顯示了一個軸(子圖(Axes))??梢允褂胹ubplot函數(shù)快速繪制有多個軸的圖表。subplot函數(shù)的調(diào)用形式如下:subplot(numRows,numCols,plotNum)12ppt課件快速繪圖繪制多軸圖subplot(numRows,numC快速繪圖subplot將整個繪圖區(qū)域等分為numRows行和numCols列個子區(qū)域,然后按照從左到右,從上到下的順序?qū)γ總€子區(qū)域進行編號,左上的子區(qū)域的編號為1。如果numRows,numCols和plotNum這三個數(shù)都小于10的話,可以把它們縮寫為一個整數(shù),例如subplot(323)和subplot(3,2,3)是相同的。subplot在plotNum指定的區(qū)域中創(chuàng)建一個軸對象。如果新創(chuàng)建的軸和之前創(chuàng)建的軸重疊的話,之前的軸將被刪除。13ppt課件快速繪圖subplot將整個繪圖區(qū)域等分為快速繪圖下面的程序創(chuàng)建3行2列共6個軸,通過axisbg參數(shù)給每個軸設(shè)置不同的背景顏色。如果希望某個軸占據(jù)整個行或者列的話,可以如下調(diào)用subplot:foridx,colorinenumerate("rgbyck"):plt.subplot(320+idx+1,axisbg=color)plt.show()plt.subplot(221)#第一行的左圖plt.subplot(222)#第一行的右圖plt.subplot(212)#第二整行plt.show()14ppt課件快速繪圖下面的程序創(chuàng)建3行2列共6個軸,通快速繪圖當繪圖對象中有多個軸的時候,可以通過工具欄中的ConfigureSubplots按鈕,交互式地調(diào)節(jié)軸之間的間距和軸與邊框之間的距離。如果希望在程序中調(diào)節(jié)的話,可以調(diào)用subplots_adjust函數(shù),它有l(wèi)eft,right,bottom,top,wspace,hspace等幾個關(guān)鍵字參數(shù),這些參數(shù)的值都是0到1之間的小數(shù),它們是以繪圖區(qū)域的寬高為1進行正規(guī)化之后的坐標或者長度。15ppt課件快速繪圖當繪圖對象中有多個軸的時候,可以快速繪圖
subplot()返回它所創(chuàng)建的Axes對象,可以將它用變量保存起來,然后用sca()交替讓它們成為當前Axes對象,并調(diào)用plot()在其中繪圖。如果需要同時繪制多幅圖表,可以給figure()傳遞一個整數(shù)參數(shù)指定Figure對象的序號,如果序號所指定的figure對象已經(jīng)存在,將不創(chuàng)建新的對象,而只是讓它成為當前的Figure對象。下面的程序演示了如何依次在不同圖表的不同子圖中繪制曲線。(matplotlib_multi_figure.py)16ppt課件快速繪圖subplot()返回它所創(chuàng)建的快速繪圖
首先通過figure()創(chuàng)建了兩個圖表,它們的序號分別為1和2。然后在圖表2中創(chuàng)建了上下并排的兩個子圖,并用變量ax1和ax2保存。importnumpyasnpimportmatplotlib.pyplotaspltplt.figure(1)#創(chuàng)建圖表1plt.figure(2)#創(chuàng)建圖表2ax1=plt.subplot(211)#在圖表2中創(chuàng)建子圖1ax2=plt.subplot(212)#在圖表2中創(chuàng)建子圖2x=np.linspace(0,3,100)17ppt課件快速繪圖首先通過figure()創(chuàng)建了兩快速繪圖
在循環(huán)中,先調(diào)用figure(1)讓圖表1成為當前圖表,并在其中繪圖。然后調(diào)用sca(ax1)和sca(ax2)分別讓子圖ax1和ax2成為當前子圖,并在其中繪圖。當它們成為當前子圖時,包含它們的圖表2也自動成為當前圖表,因此不需要調(diào)用figure(2)依次在圖表1和圖表2的兩個子圖之間切換,逐步在其中添加新的曲線
foriinxrange(5): plt.figure(1)#選擇圖表1 plt.plot(x,np.exp(i*x/3)) plt.sca(ax1)#選擇圖表2的子圖1 plt.plot(x,np.sin(i*x)) plt.sca(ax2)#選擇圖表2的子圖2 plt.plot(x,np.cos(i*x))plt.show()18ppt課件快速繪圖在循環(huán)中,先調(diào)用figure(1快速繪圖
19ppt課件快速繪圖19ppt課件快速繪圖坐標軸設(shè)定Axis容器包括坐標軸的刻度線、刻度標簽、坐標網(wǎng)格以及坐標軸標題等內(nèi)容??潭劝ㄖ骺潭群透笨潭?,分別通過get_major_ticks()和get_minor_ticks()方法獲得。每個刻度線都是一個XTick或YTick對象,它包括實際的刻度線和刻度標簽。為了方便訪問刻度線和文本,Axis對象提供了get_ticklabels()和get_ticklines()方法,可以直接獲得刻度標簽和刻度線。下面例子進行繪圖并得到當前子圖的X軸對象axis:>>>plt.plot([1,2,3],[4,5,6])>>>plt.show()>>>axis=plt.gca().xaxis20ppt課件快速繪圖坐標軸設(shè)定>>>plt.plot([1,2,3],快速繪圖
獲得axis對象的刻度位置列表:
下面獲得axis對象的刻度標簽以及標簽中的文字:>>>axis.get_ticklocs()array([1.,1.5,2.,2.5,3.])>>>axis.get_ticklabels()#獲得刻度標簽列表<alistof5Textmajorticklabelobjects>>>>[x.get_text()forxinaxis.get_ticklabels()]#獲得刻度的文本字符串[u'1.0',u'1.5',u'2.0',u'2.5',u'3.0‘]
21ppt課件快速繪圖獲得axis對象的刻度位置列表:>>快速繪圖22ppt課件快速繪圖22ppt課件快速繪圖
下面獲得X軸上表示主刻度線的列表,可看到X軸上共有10條刻度線
由于沒有副刻度線,因此副刻度線列表的長度為0:
使用pyplot模塊中的xticks()能夠完成X軸上刻度標簽的配置:
>>>
axis.get_ticklines()<alistof10Line2Dticklinesobjects>>>>axis.get_ticklines(minor=True)#獲得副刻度線列表<alistof0Line2Dticklinesobjects>>>>plt.xticks(fontsize=16,color="red",rotation=45)23ppt課件快速繪圖下面獲得X軸上表示主刻度線的列表,快速繪圖
上面的例子中副刻度線列表為空,這是因為用于計算副刻度位置的對象默認為NullLocator,它不產(chǎn)生任何刻度線。而計算主刻度位置的對象為AutoLocator,它會根據(jù)當前的縮放等配置自動計算刻度的位置.matplotlib提供了多種配置刻度線位置的Locator類,以及控制刻度標簽顯示的Formatter類。下面的程序設(shè)置X軸的主刻度為π/4,副刻度為π/20,并且主刻度上的標簽用數(shù)學符號顯示π。(matplotlib_axis_text.py自定義坐標軸的刻度和文字)24ppt課件快速繪圖上面的例子中副刻度線列表為空,這快速繪圖
與刻度定位和文本格式化相關(guān)的類都在matplotlib.ticker模塊中定義,程序從中載入了兩個類:MultipleLocaton,FuncFormatter.
frommatplotlib.tickerimportMultipleLocator,FuncFormatterimportmatplotlib.pyplotasplfrommatplotlib.tickerimportMultipleLocator,FuncFormatterimportnumpyasnpx=np.arange(0,4*np.pi,0.01)y=np.sin(x)pl.figure(figsize=(8,4))pl.plot(x,y)ax=pl.gca()25ppt課件快速繪圖與刻度定位和文本格式化相關(guān)的類都在快速繪圖程序中通過pi_formatter()計算出刻度值對應的刻度文本.(很繁瑣)defpi_formatter(x,pos): m=np.round(x/(np.pi/4)) n=4 whilem!=0andm%2==0:m,n=m//2,n//2 ifm==0: return"0" ifm==1andn==1: return"$\pi$" ifn==1: returnr"$%d\pi$"%m ifm==1: returnr"$\frac{\pi}{%d}$"%n returnr"$\frac{%d\pi}{%d}$"%(m,n)26ppt課件快速繪圖程序中通過pi_formatter快速繪圖
>>>X=np.linspace(0,4*np.pi,17,endpoint=True)>>>Xarray([0.,0.78539816,1.57079633,2.35619449,3.14159265,3.92699082,4.71238898,5.49778714,6.28318531,7.06858347,7.85398163,8.6393798,9.42477796,10.21017612,10.99557429,11.78097245,12.56637061])>>>plt.xticks([0.,0.78539816,1.57079633,2.35619449,3.14159265,3.92699082,4.71238898,5.49778714,6.28318531,7.06858347,7.85398163,8.6393798,9.42477796,10.21017612,10.99557429,11.78097245,12.56637061],[r'$0$',r'$\pi/4$',r'$\pi/2$',r'$3\pi/4$',r'$\pi$',r'$5\pi/4$',r'$3\pi/2$',r'$7\pi/4$',r'$2\pi$',r'$9\pi/4$',r'$5\pi/2$',r'$11\pi/4$',r'$3\pi$',r'$13\pi/4$',r'$7\pi/2$',r'$15\pi/4$',r'$4\pi$'])#r'$\frac{2\pi}{3}$',27ppt課件快速繪圖>>>X=np.linspace(0,4*快速繪圖
以指定值的整數(shù)倍為刻度放置主、副刻度線。
使用指定的函數(shù)計算刻度文本,它會將刻度值和刻度的序號作為參數(shù)傳遞給計算刻度文本的函數(shù).ax.xaxis.set_major_locator(MultipleLocator(np.pi/4))ax.xaxis.set_minor_locator(MultipleLocator(np.pi/20))ax.xaxis.set_major_formatter(FuncFormatter(pi_formatter))#設(shè)置兩個坐標軸的范圍pl.ylim(-1.5,1.5)pl.xlim(0,np.max(x))
28ppt課件快速繪圖以指定值的整數(shù)倍為刻度放置主、副刻度線。a快速繪圖
pl.subplots_adjust(bottom=0.15)#設(shè)置圖的底邊距
pl.grid()#開啟網(wǎng)格
#主刻度為pi/4ax.xaxis.set_major_locator(MultipleLocator(np.pi/4))
#主刻度文本用pi_formatter函數(shù)計算ax.xaxis.set_major_formatter(FuncFormatter(pi_formatter))
#副刻度為pi/20ax.xaxis.set_minor_locator(MultipleLocator(np.pi/20))
#設(shè)置刻度文本的大小fortickinax.xaxis.get_major_ticks(): tick.label1.set_fontsize(16)pl.show()29ppt課件快速繪圖pl.subplots_adjust(botto快速繪圖
30ppt課件快速繪圖30ppt課件繪圖函數(shù)簡介對數(shù)坐標圖
前面介紹過如何使用plot()繪制曲線圖,所繪制圖表的X-Y軸坐標都是算術(shù)坐標。下面看看如何在對數(shù)坐標系中繪圖。
繪制對數(shù)坐標圖的函數(shù)有三個:semilogx()、semilogy()和loglog(),它們分別繪制X軸為對數(shù)坐標、Y軸為對數(shù)坐標以及兩個軸都為對數(shù)坐標時的圖表。
31ppt課件繪圖函數(shù)簡介對數(shù)坐標圖31ppt課件繪圖函數(shù)簡介
下面的程序使用4種不同的坐標系繪制低通濾波器的頻率響應曲線。其中,左上圖為plot()繪制的算術(shù)坐標系,右上圖為semilogx()繪制的X軸對數(shù)坐標系,左下圖為semilogy()繪制的Y軸對數(shù)坐標系,右下圖為loglog()繪制的雙對數(shù)坐標系。使用雙對數(shù)坐標系表示的頻率響應曲線通常被稱為波特圖。(matplotlib_log.py)
importnumpyasnpimportmatplotlib.pyplotaspltw=np.linspace(0.1,1000,1000)p=np.abs(1/(1+0.1j*w))#計算低通濾波器的頻率響應32ppt課件繪圖函數(shù)簡介下面的程序使用4種不同的坐標繪圖函數(shù)簡介plt.subplot(221)plt.plot(w,p,linewidth=2)plt.ylim(0,1.5)
plt.subplot(222)plt.semilogx(w,p,linewidth=2)plt.ylim(0,1.5)
plt.subplot(223)plt.semilogy(w,p,linewidth=2)plt.ylim(0,1.5)
plt.subplot(224)plt.loglog(w,p,linewidth=2)plt.ylim(0,1.5)
plt.show()33ppt課件繪圖函數(shù)簡介plt.subplot(221)33ppt課件繪圖函數(shù)簡介
34ppt課件繪圖函數(shù)簡介34ppt課件繪圖函數(shù)簡介極坐標圖
極坐標系是和笛卡爾(X-Y)坐標系完全不同的坐標系,極坐標系中的點由一個夾角和一段相對中心點的距離來表示。下面的程序繪制極坐標圖,(matplotlib_polar.py)。
importnumpyasnpimportmatplotlib.pyplotasplt
theta=np.arange(0,2*np.pi,0.02)35ppt課件繪圖函數(shù)簡介極坐標圖importnumpyasnp35繪圖函數(shù)簡介程序中調(diào)用subplot()創(chuàng)建子圖時通過設(shè)polar參數(shù)為True,創(chuàng)建一個極坐標子圖。然后調(diào)用plot()在極坐標子圖中繪圖。也可以使用polar()直接創(chuàng)建極坐標子圖并在其中繪制曲線。
plt.subplot(121,polar=True)plt.plot(theta,1.6*np.ones_like(theta),linewidth=2)plt.plot(3*theta,theta/3,"--",linewidth=2)36ppt課件繪圖函數(shù)簡介plt.subplot(121,polar=T繪圖函數(shù)簡介rgrids()設(shè)置同心圓柵格的半徑大小和文字標注的角度。因此右圖中的虛線圓圈有三個,半徑分別為0.5、1.0和1.5,這些文字沿著45°線排列。Thetagrids()設(shè)置放射線柵格的角度,因此右圖中只有兩條放射線,角度分別為0°和45°。
plt.subplot(122,polar=True)plt.plot(theta,1.4*np.cos(5*theta),"--",linewidth=2)plt.plot(theta,1.8*np.cos(4*theta),linewidth=2)plt.rgrids(np.arange(0.5,2,0.5),angle=45)plt.thetagrids([0,45])plt.show()37ppt課件繪圖函數(shù)簡介plt.subplot(122,polar=T繪圖函數(shù)簡介
38ppt課件繪圖函數(shù)簡介38ppt課件繪圖函數(shù)簡介柱狀圖
柱狀圖用其每根柱子的長度表示值的大小,它們通常用來比較兩組或多組值。下面的程序從文件中讀入中國人口的年齡分布數(shù)據(jù),并使用柱狀圖比較男性和女性的年齡分布。(matplotlib_bar.py
繪制比較男女人口的年齡分布圖
)importnumpyasnpimportmatplotlib.pyplotasplt
39ppt課件繪圖函數(shù)簡介柱狀圖importnumpyasnp39p繪圖函數(shù)簡介
讀入的數(shù)據(jù)中,第0列為年齡,它將作為柱狀圖的橫坐標。首先計算柱狀圖中每根柱子的寬度,因為要在每個年齡段上繪制兩根柱子,因此柱子的寬度應該小于年齡段的二分之一。這里以年齡段的0.4倍作為柱子的寬度。
data=np.loadtxt("china_population.txt")width=(data[1,0]-data[0,0])*0.440ppt課件繪圖函數(shù)簡介data=np.loadtxt("ch繪圖函數(shù)簡介
調(diào)用bar()繪制男性人口分布的柱狀圖。它的第一個參數(shù)為每根柱子左邊緣的橫坐標,為了讓男性和女性的柱子以年齡刻度為中心,這里讓每根柱子左側(cè)的橫坐標為“年齡減去柱子的寬度”。Bar()的第二個參數(shù)為每根柱子的高度,第三個參數(shù)指定所有柱子的寬度。當?shù)谌齻€參數(shù)為序列時,可以為每根柱子指定寬度。
plt.figure(figsize=(8,5))plt.bar(data[:,0]-width,data[:,1]/1e7,width,color="b",label=u"男")41ppt課件繪圖函數(shù)簡介plt.figure(figsize=(8,5)繪圖函數(shù)簡介
繪制女性人口分布的柱狀圖,這里以年齡為柱子的左邊緣橫坐標,因此女性和男性的人口分布圖以年齡刻度為中心。由于bar()不自動修改顏色,因此程序中通過color參數(shù)設(shè)置兩個柱狀圖的顏色。
plt.bar(data[:,0],data[:,2]/1e7,width,color="r",label=u"女")plt.xlim(-width,100)plt.xlabel(u"年齡")plt.ylabel(u"人口(千萬)")plt.legend()
plt.show()42ppt課件繪圖函數(shù)簡介plt.bar(data[:,繪圖函數(shù)簡介
43ppt課件繪圖函數(shù)簡介43ppt課件繪圖函數(shù)簡介散列圖
使用plot()繪圖時,如果指定樣式參數(shù)為僅繪制數(shù)據(jù)點,那么所繪制的就是一幅散列圖。例如:
但是這種方法所繪制的點無法單獨指定顏色和大小。而scatter()所繪制的散列圖卻可以指定每個點的顏色和大小。下面的程序演示scatter()的用法(matplotlib_scatter.py).>>>plt.plot(np.random.random(100),np.random.random(100),"o")44ppt課件繪圖函數(shù)簡介散列圖>>>plt.plot(np.rando繪圖函數(shù)簡介scatter()的前兩個參數(shù)是數(shù)組,分別指定每個點的X軸和Y軸的坐標。s參數(shù)指定點的大小,值和點的面積成正比。它可以是一個數(shù),importnumpyasnpimportmatplotlib.pyplotasplt
plt.figure(figsize=(8,4))x=np.random.random(100)y=np.random.random(100)plt.scatter(x,y,s=x*1000,c=y,marker=(5,1),alpha=0.8,lw=2,facecolors="none")plt.xlim(0,1)plt.ylim(0,1)
plt.show()45ppt課件繪圖函數(shù)簡介importnumpyasnp45ppt課繪圖函數(shù)簡介
指定所有點的大小;也可以是數(shù)組,分別對每個點指定大小。c參數(shù)指定每個點的顏色,可以是數(shù)值或數(shù)組。這里使用一維數(shù)組為每個點指定了一個數(shù)值。通過顏色映射表,每個數(shù)值都會與一個顏色相對應。默認的顏色映射表中藍色與最小值對應,紅色與最大值對應。當c參數(shù)是形狀為(N,3)或(N,4)的二維數(shù)組時,則直接表示每個點的RGB顏色。marker參數(shù)設(shè)置點的形狀,可以是個表示形狀的字符串,也可以是表示多邊形的兩個元素的元組,第一個元素表示多邊形的邊數(shù),46ppt課件繪圖函數(shù)簡介指定所有點的大?。灰部梢允菙?shù)組,分別對每繪圖函數(shù)簡介
第二個元素表示多邊形的樣式,取值范圍為0、1、2、3。0表示多邊形,1表示星形,2表示放射形,3表示忽略邊數(shù)而顯示為圓形。
最后,通過alpha參數(shù)設(shè)置點的透明度,通過lw參數(shù)設(shè)置線寬,lw是linewidth的縮寫。facecolors參數(shù)為“none”時,表示散列點沒有填充色。47ppt課件繪圖函數(shù)簡介第二個元素表示多邊形的樣式,取值范圍為0繪圖函數(shù)簡介48ppt課件繪圖函數(shù)簡介48ppt課件繪圖函數(shù)簡介圖像imread()和imshow()提供了簡單的圖像載入和顯示功能.imread()可以從圖像文件讀入數(shù)據(jù),得到一個表示圖像的NumPy數(shù)組。它的第一個參數(shù)是文件名或文件對象,format參數(shù)指定圖像類型,如果省略,就由文件的擴展名決定圖像類型。對于灰度圖像,它返回一個形狀為(M,N)的數(shù)組;對于彩色圖像,返冋形狀為(M,N,C)的數(shù)組。其中,M為圖像的高度,N為圖像的寬度,C為3或4,表示圖像的通道數(shù)。>>>img=plt.imread(“l(fā)ena.jpg“)49ppt課件繪圖函數(shù)簡介圖像>>>img=plt.imread(“l(fā)繪圖函數(shù)簡介
下面的程序從“l(fā)ena.jpg”中讀入圖像數(shù)據(jù),得到的數(shù)組img是一個形狀為(393,512,3)的單字節(jié)無符號整數(shù)數(shù)組。這是因為通常使用的圖像都是采用單字節(jié)分別保存每個像素的紅、綠、藍三個通道的分量:
>>>img=plt.imread("lena.jpg")>>>img.shape(393L,512L,3L)>>>img.dtypedtype('uint8')
50ppt課件繪圖函數(shù)簡介下面的程序從“l(fā)ena.jp繪圖函數(shù)簡介imshow()可以用來顯示imread()返回的數(shù)組。如果數(shù)組是表示多通道圖像的三維數(shù)組,那么每個像素的顏色由各個通道的值決定:
請注意,從JPG圖像中讀入的數(shù)據(jù)是上下顛倒的,為了正常顯示圖像,可以將數(shù)組的第0軸反轉(zhuǎn),或者設(shè)置imshow()的origin參數(shù)為“l(fā)ower”,從而讓所顯示圖表的原點在左下角:>>>plt.imshow(img)#注意圖像是上下顛倒的>>>plt.imshow(img[::-1])#反轉(zhuǎn)圖像數(shù)組的第0軸#or>>>plt.imshow(img,origin="lower")#讓圖表的原點在左下角51ppt課件繪圖函數(shù)簡介imshow()可以用來顯示繪圖函數(shù)簡介
如果三維數(shù)組的元素類型為浮點數(shù),那么元素的取值范圍為0.0到1.0,與顏色值0到255對應。超出這個范圍可能會出現(xiàn)顏色異常的像素。下面的例子將數(shù)組img轉(zhuǎn)換為浮點數(shù)組并用imshow()進行顯示:>>>img=img[::-1]>>>plt.imshow(img*1.0)#取值范圍為0.0到255.0的浮點數(shù)組,不能正確顯示顏色>>>plt.imshow(img/255.0)#取值范圍為0.0到1.0的浮點數(shù)組,能正確顯示顏色>>>plt.imshow(np.clip(img/200.0,0,1))#使用clip()限制取值范圍,整個圖像變亮52ppt課件繪圖函數(shù)簡介如果三維數(shù)組的元素類型為浮點繪圖函數(shù)簡介
如果imshow()的參數(shù)是二維數(shù)組,就使用顏色映射表決定每個像素的顏色。下面顯示圖像中的紅色通道:
顯示效果比較嚇人,因為默認的圖像映射將最小值映射為藍色、將最大值映射為紅色.
可以使用colorbar()將顏色映射表在圖表中顯示出來:
>>>plt.imshow(img[:,:,0])>>>plt.colorbar()53ppt課件繪圖函數(shù)簡介如果imshow()的參數(shù)是繪圖函數(shù)簡介
通過imshow()的cmap參數(shù)可以修改顯示圖像時所采用的顏色映射表。顏色映射表是一個ColorMap對象,matplotlib中已經(jīng)預先定義好了很多顏色映射表,可通過下面的語句找到這些顏色映射表的名字:(matplotlib_imshow.py)
下面使用名為copper的顏色映射表顯示圖像的紅色通道,很有老照片的味道:
>>>importmatplotlib.cmascm>>>cm._cmapnames[‘Spectral’,’copper’,‘RdYlGn',‘Set2’,’sumner’,’spring’,’gist_ncar’,…]>>>plt.imshow(img[:,:,0],cmap=cm.copper)54ppt課件繪圖函數(shù)簡介通過imshow()的cmap繪圖函數(shù)簡介
importnumpyasnpimportmatplotlib.pyplotaspltimportmatplotlib.cmascmplt.subplots_adjust(0,0,1,1,0.05,0.05)plt.subplot(331)img=plt.imread("lena.jpg")plt.imshow(img)
plt.subplot(332)plt.imshow(img[::-1])
plt.subplot(333)plt.imshow(img,origin="lower")img=img[::-1]plt.subplot(334)plt.imshow(img*1.0)55ppt課件繪圖函數(shù)簡介importnumpyasnp55pp繪圖函數(shù)簡介
plt.subplot(335)plt.imshow(img/255.0)
plt.subplot(336)plt.imshow(np.clip(img/200.0,0,1))
plt.subplot(325)plt.imshow(img[:,:,0])plt.colorbar()
plt.subplot(326)plt.imshow(img[:,:,0],cmap=cm.copper)plt.colorbar()
foraxinplt.gcf().axes: ax.set_axis_off() ax.set_axis_off()
plt.show()56ppt課件繪圖函數(shù)簡介plt.subplot(335)56ppt課繪圖函數(shù)簡介57ppt課件繪圖函數(shù)簡介57ppt課件繪圖函數(shù)簡介
還可以使用imshow()顯示任意的二維數(shù)據(jù),例如下面的程序使用圖像直觀地顯示了二元函數(shù).(matplotlib_2dfunc.py使用imshow()可視化二元函數(shù))
importnumpyasnpimportmatplotlib.pyplotaspltimportmatplotlib.cmascm
y,x=np.ogrid[-2:2:200j,-2:2:200j]z=x*np.exp(-x**2-y**2)
extent=[np.min(x),np.max(x),np.min(y),np.max(y)]58ppt課件繪圖函數(shù)簡介還可以使用imshow()顯繪圖函數(shù)簡介
首先通過數(shù)組的廣播功能計算出表示函數(shù)值的二維數(shù)組Z,注意它的第0軸表示Y軸、第1軸表示X軸。然后將X、Y軸的取值范圍保存到extent列表中。plt.figure(figsize=(10,3))plt.subplot(121)plt.imshow(z,extent=extent,origin="lower")plt.colorbar()plt.subplot(122)plt.imshow(z,extent=extent,cmap=cm.gray,origin="lower")plt.colorbar()plt.show()59ppt課件繪圖函數(shù)簡介plt.figure(figsize=(10,3繪圖函數(shù)簡介
將extent列表傳遞給imshow()的extent參數(shù),這樣一來,圖表的X、Y軸的刻度標簽將使用extent列表所指定的范圍.60ppt課件繪圖函數(shù)簡介將extent列表傳遞給im繪圖函數(shù)簡介等值線圖
還可以使用等值線圖表示二元函數(shù)。所謂等值線,是指由函數(shù)值相等的各點連成的平滑曲線。等值線可以直觀地表示二元函數(shù)值的變化趨勢,例如等值線密集的地方表示函數(shù)值在此處的變化較大。matplotlib中可以使用contour()和contourf()描繪等值線,它們的區(qū)別是:contourf()所得到的是帶填充效果的等值線。(matplotlib_contour.py用contour和contourf描繪等值線圖)
61ppt課件繪圖函數(shù)簡介等值線圖61ppt課件繪圖函數(shù)簡介
importnumpyasnpimportmatplotlib.pyplotasplt
y,x=np.ogrid[-2:2:200j,-3:3:300j]z=x*np.exp(-x**2-y**2)
extent=[np.min(x),np.max(x),np.min(y),np.max(y)]
plt.figure(figsize=(10,4))plt.subplot(121)cs=plt.contour(z,10,extent=extent)plt.clabel(cs)plt.subplot(122)plt.contourf(x.reshape(-1),y.reshape(-1),z,20)plt.show()62ppt課件繪圖函數(shù)簡介importnumpyasnp62ppt課繪圖函數(shù)簡介
為了更淸楚地區(qū)分X軸和Y軸,這里讓它們的取值范圍和等分次數(shù)均不相同.這樣得到的數(shù)組z的形狀為(200,300),它的第0軸對應Y軸、第1軸對應X軸。
調(diào)用contour()繪制數(shù)組z的等值線圖,第二個參數(shù)為10,表示將整個函數(shù)的取值范圍等分為10個區(qū)間,即顯示的等值線圖中將有9條等值線。和imshow()一樣,可以使用extent參數(shù)指定等值線圖的X軸和Y軸的數(shù)據(jù)范圍。contour()所返回的是一個QuadContourSet對象,將它傳遞給clabel(),為其中的等值線標上對應的值。63ppt課件繪圖函數(shù)簡介為了更淸楚地區(qū)分X軸和Y軸,這繪圖函數(shù)簡介
調(diào)用contourf(),繪制將取值范圍等分為20份、帶填充效果的等值線圖。這里演示了另外一種設(shè)置X、Y軸取值范圍的方法。它的前兩個參數(shù)分別是計算數(shù)組z時所使用的X軸和Y軸上的取樣點,這兩個數(shù)組必須是一維的。64ppt課件繪圖函數(shù)簡介調(diào)用contourf(),繪繪圖函數(shù)簡介
還可以使用等值線繪制隱函數(shù)曲線.顯然,無法像繪制一般函數(shù)那樣,先創(chuàng)建一個等差數(shù)組表示變量的取值點,然后計算出數(shù)組中每個x所對應的y值??梢允褂玫戎稻€解決這個問題,顯然隱函數(shù)的曲線就是值等于0的那條等值線。下面的程序繪制函數(shù)
在f(x,y)=0和f(x,y)-0.1=0時的曲線.(matplotlib_implicit_func.py)importnumpyasnpimportmatplotlib.pyplotasplty,x=np.ogrid[-1.5:1.5:200j,-1.5:1.5:200j]f=(x**2+y**2)**4-(x**2-y**2)**265ppt課件繪圖函數(shù)簡介還可以使用等值線繪制隱函數(shù)曲繪圖函數(shù)簡介
plt.figure(figsize=(9,4))plt.subplot(121)extent=[np.min(x),np.max(x),np.min(y),np.max(y)]cs=plt.contour(f,extent=extent,levels=[0,0.1],colors=["b","r"],linestyles=["solid","dashed"],linewidths=[2,2])plt.subplot(122)forcincs.collections:data=c.get_paths()[0].verticesplt.plot(data[:,0],data[:,1],color=c.get_color()[0],linewidth=c.get_linewidth()[0])
plt.show()66ppt課件繪圖函數(shù)簡介plt.figure(figsize=(9,4繪圖函數(shù)簡介67ppt課件繪圖函數(shù)簡介67ppt課件繪圖函數(shù)簡介
在調(diào)用contour()繪制等值線時,可以通過levels參數(shù)指定所繪制等值線對應的函數(shù)值,這里設(shè)置levels參數(shù)為[0,0.1],因此最終將繪制兩條等值線。
觀察圖會發(fā)現(xiàn),表示隱函數(shù)f(x)=0藍色實線并不是完全連續(xù)的,在圖的中間部分它由許多孤立的小段構(gòu)成。因為等值線在原點附近無限靠近,因此無論對函數(shù)f的取值空間如何進行細分,總是會有無法分開的地方,最終造成了圖中的那些孤立的細小區(qū)域。而表示隱函數(shù)f(x,y)-0.1=0的紅色虛線則是閉合且連續(xù)的。
68ppt課件繪圖函數(shù)簡介在調(diào)用contour()繪制繪圖函數(shù)簡介
可以通過contour()返回的對象獲得等值線上每點的數(shù)據(jù),下面在IPython中觀察變量cs,它是一個QuadContourSet對象:
cs對象的collections屬性是一個等值線列表,每條等值線用一個LineCollection對象表示:
>>>cs.collections
<alistof2mcoll.LineCollectionobjects>>>>runmatplotlib_implicit_func.py>>>cs
<matplotllb.contour.QuadContourSetinstanceat0x0A348E90>69ppt課件繪圖函數(shù)簡介可以通過contour()返繪圖函數(shù)簡介
每個LineCollection對象都有它自己的顏色、線型、線寬等屬性,注意這些屬性所獲得的結(jié)果外面還有一層封裝,要獲得其第0個元素才是真正的配置:
由類名可知,LineCollection對象是一組曲線的集合,因此它可以表示像藍色實線那樣由多條線構(gòu)成的等值線。它的get_paths()方法獲得構(gòu)成等值線的所有路徑,本例中藍色實線>>>c.get_color()[0]array([1.,0.,0.,1.])>>>c.get_linewidth()[0]270ppt課件繪圖函數(shù)簡介每個LineCollecti繪圖函數(shù)簡介所表示的等值線由42條路徑構(gòu)成:
路徑是一個Path對象,通過它的vertices屬性可以獲得路徑上所有點的坐標:>>>len(cs.collections[0].get_paths())42>>>path=cs.collections[0].get_paths()[0]>>>type(path)<class'matplotlib.path.Path>>>>path.verticesarray([[-0.08291457,-0.98938936],[-0.09039269,-0.98743719],…,[-0.08291457,-0.98938936]])71ppt課件繪圖函數(shù)簡介所表示的等值線由42條路徑構(gòu)成:>>>len(繪圖函數(shù)簡介
下面的程序從等值線集合cs中找到表示等值線的路徑,并使用plot()將其繪制出來.plt.subplot(122)forcincs.collections:data=c.get_paths()[0].verticesplt.plot(data[:,0],data[:,1],color=c.get_color()[0],linewidth=c.get_linewidth()[0])72ppt課件繪圖函數(shù)簡介下面的程序從等值線集合cs中繪圖函數(shù)簡介三維繪圖mpl_toolkits.mplot3d模塊在matplotlib基礎(chǔ)上提供了三維繪圖的功能。由于它使用matplotlib的二維繪圖功能來實現(xiàn)三維圖形的繪制工作,因此繪圖速度有限,不適合用于大規(guī)模數(shù)據(jù)的三維繪圖。如果需要更復雜的三維數(shù)據(jù)可視化功能,可使用Mayavi。(matplotlib_surface.py使用matplotlib繪制三維曲面)73ppt課件繪圖函數(shù)簡介三維繪圖73ppt課件繪圖函數(shù)簡介
"""演示matplotlib的三維繪圖功能。"""importnumpyasnpimportmpl_toolkits.mplot3dimportmatplotlib.pyplotasplt
x,y=np.mgrid[-2:2:20j,-2:2:20j]z=x*np.exp(-x**2-y**2)
ax=plt.subplot(111,projection='3d')ax.plot_surface(x,y,z,rstride=2,cstride=1,cmap=plt.cm.Blues_r)ax.set_xlabel("X")ax.set_ylabel("Y")ax.set_zlabel("Z")plt.show()74ppt課件繪圖函數(shù)簡介"""74ppt課件繪圖函數(shù)簡介75ppt課件繪圖函數(shù)簡介75ppt課件繪圖函數(shù)簡介
首先載入mplot3d模塊,matplotlib中與三維繪圖相關(guān)的功能均在此模塊中定義。使用mgrid創(chuàng)建X-Y平面的網(wǎng)格并計算網(wǎng)格上每點的高度z。由于繪制三維曲面的函數(shù)要求X、Y和Z軸的數(shù)據(jù)都用相同形狀的二維數(shù)組表示,因此這里不能使用ogrid創(chuàng)建。和之前的imshow()不同.數(shù)組的第0軸可以表示X和Y軸中的任意一個,在本例中第0軸表示X軸、第1軸表示Y軸。
在當前圖表中創(chuàng)建一個子圖,通過projection參數(shù)指定子圖的投影模式為“3d”,這樣subplot()將返回一個用于三維繪圖的Axes3D子圖對象。76ppt課件繪圖函數(shù)簡介首先載入mplot3d模塊,繪圖函數(shù)簡介
投影模式:投影模式?jīng)Q定了點從數(shù)據(jù)坐標轉(zhuǎn)換為屏幕坐標的方式.可以通過下面的語句獲得當前有效的投影模式的名稱:
只有在載入mplot3d模塊之后,此列表中才會出現(xiàn)’3d’投影模式.’aitoff’、’hammer’,’lamberf’,’mollweide’等均為地圖投影,,’polar’為極坐標投影,'rectilinear’則是默認的直線投影模式.>>>frommatplotlibimportprojections>>>projections.get_projection_names()['3d','aitoff','hammer','lambert','mollweide1,'polar','rectilinear']77ppt課件繪圖函數(shù)簡介投影模式:投影模式?jīng)Q定了點從數(shù)據(jù)繪圖函數(shù)簡介
調(diào)用Axes3D對象的plot_surface()繪制三維曲面。其中:參數(shù)x、y、z都是形狀為(20,20)的二維數(shù)組,數(shù)組x和y構(gòu)成了X-Y平面上的網(wǎng)格,而數(shù)組z則是網(wǎng)格上各點在曲面上的取值。通過cmap參數(shù)來指定值和顏色之間的映射,即曲面上各點的高度值與其顏色的對應關(guān)系。rstride和cstride參數(shù)分別是數(shù)組的第0軸和第1軸的下標間隔.對于很大的數(shù)組,使用較大的間隔可以提高曲面的繪制速度。程序中,plot_surfece()調(diào)用和下面的語句是等價的:ax.plot_surface(x[::2,:],y[::2,:],z[::2,:],rstride=1,cstride=1)78ppt課件繪圖函數(shù)簡介調(diào)用Axes3D對象的plot繪圖函數(shù)簡介
除了繪制三維曲面之外,Axes3D對象還提供了許多其他的三維繪圖方法。可以通過下面的鏈接地址找到各種三維繪圖的演示程序:
/examples/mplot3d/index.html79ppt課件繪圖函數(shù)簡介除了繪制三維曲面之外,Axe
frommpl_toolkits.mplot3dimportAxes3Dfig=pl.figure()ax=Axes3D(fig)X=np.arange(-4,4,0.25)Y=np.arange(-4,4,0.25)X,Y=np.meshgrid(X,Y)R=np.sqrt(X**2+Y**2)Z=np.sin(R)ax.plot_surface(X,Y,Z,rstride=1,cstride=1,cmap='hot')80ppt課件frommpl_toolkits.mplot3dim81ppt課件81ppt課件Python的繪圖庫matplotlib快速入門82ppt課件Python的繪圖庫matplotlib快速入門1ppt課件Matplotlib—繪制精美的圖表83ppt課件Matplotlib—繪制精美的圖表2ppt課件matplotlib是python最著名的繪圖庫,它提供了一整套和matlab相似的命令API,十分適合交互式地進行制圖。而且也可以方便地將它作為繪圖控件,嵌入GUI應用程序中。它的文檔相當完備,并且Gallery頁面中有上百幅縮略圖,打開之后都有源程序。因此如果你需要繪制某種類型的圖,只需要在這個頁面中瀏覽/復制/粘貼一下,基本上都能搞定。
展示頁面的地址:/gallery.html84ppt課件matplotlib是python最著快速繪圖快速繪圖matplotlib的pyplot子庫提供了和matlab類似的繪圖API,方便用戶快速繪制2D圖表。(matplotlib_simple_plot.py)
pylab模塊matplotlib還提供了名為pylab的模塊,其中包括了許多numpy和pyplot中常用的函數(shù),方便用戶快速進行計算和繪圖,可以用于IPython中的快速交互式使用。
85ppt課件快速繪圖快速繪圖4ppt課件快速繪圖matplotlib中的快速繪圖的函數(shù)庫可以通過如下語句載入:接下來調(diào)用figure創(chuàng)建一個繪圖對象,并且使它成為當前的繪圖對象。通過figsize參數(shù)可以指定繪圖對象的寬度和高度,單位為英寸;dpi參數(shù)指定繪圖對象的分辨率,即每英寸多少個像素,缺省值為80。因此本例中所創(chuàng)建的圖表窗口的寬度為8*80=640像素。importmatplotlib.pyplotaspltplt.figure(figsize=(8,4))86ppt課件快速繪圖matplotlib中的快速繪圖快速繪圖也可以不創(chuàng)建繪圖對象直接調(diào)用接下來的plot函數(shù)直接繪圖,matplotlib會自動創(chuàng)建一個繪圖對象。
如果需要同時繪制多幅圖表的話,可以是給figure傳遞一個整數(shù)參數(shù)指定圖標的序號,如果所指定序號的繪圖對象已經(jīng)存在的話,將不創(chuàng)建新的對象,而只是讓它成為當前繪圖對象。下面的兩行程序通過調(diào)用plot函數(shù)在當前的繪圖對象中進行繪圖:plt.plot(x,y,label="$sin(x)$",color="red",linewidth=2)plt.plot(x,z,"b--",label="$cos(x^2)$")87ppt課件快速繪圖也可以不創(chuàng)建繪圖對象直接調(diào)用接下快速繪圖plot函數(shù)的調(diào)用方式很靈活,第一句將x,y數(shù)組傳遞給plot之后,用關(guān)鍵字參數(shù)指定各種屬性:?label:給所繪制的曲線一個名字,此名字在圖示(legend)中顯示。只要在字符串前后添加''$''符號,matplotlib就會使用其內(nèi)嵌的latex引擎繪制的數(shù)學公式。?color:指定曲線的顏色?linewidth:指定曲線的寬度第三個參數(shù)‘’b--``指定曲線的顏色和線型plt.plot(x,y,label="$sin(x)$",color="red",linewidth=2)plt.plot(x,z,"b--",label="$cos(x^2)$“)88ppt課件快速繪圖plt.plot(x,y,label="$sin(x快速繪圖接下來通過一系列函數(shù)設(shè)置繪圖對象的各個屬性:?xlabel/ylabel:設(shè)置X軸/Y軸的文字?title:設(shè)置圖表的標題?ylim:設(shè)置Y軸的范圍?legend:顯示圖示最后調(diào)用plt.show()顯示出創(chuàng)建的所有繪圖對象。plt.xlabel("Time(s)")plt.ylabel("Volt")plt.title("PyPlotFirstExample")plt.ylim(-1.2,1.2)plt.legend()89ppt課件快速繪圖接下來通過一系列函數(shù)設(shè)置繪圖對象快速繪圖
importnumpyasnpimportmatplotlib.pyplotasplt
x=np.linspace(0,10,1000)y=np.sin(x)z=np.cos(x**2)
plt.figure(figsize=(8,4))plt.plot(x,y,label="$sin(x)$",color="red",linewidth=2)plt.plot(x,z,"b--",label="$cos(x^2)$")plt.xlabel("Time(s)")plt.ylabel("Volt")plt.title("PyPlotFirstExample")plt.ylim(-1.2,1.2)plt.legend()plt.show()90ppt課件快速繪圖importnumpyasnp9ppt課件快速繪圖91ppt課件快速繪圖10ppt課件快速繪圖
還可以調(diào)用plt.savefig()將當前的Figure對象保存成圖像文件,圖像格式由圖像文件的擴展名決定。下面的程序?qū)斍暗膱D表保存為“test.png”,并且通過dpi參數(shù)指定圖像的分辨率為120,因此輸出圖像的寬度為“8X120=960”個像素。
實際上不需要調(diào)用show()顯示圖表,可以直接用savefig()將圖表保存成圖像文件.使用這種方法可以很容易編寫出批量輸出圖表的程序.runmatplotlib_simple_plot.pyplt.savefig("test.png",dpi=120)92ppt課件快速繪圖還可以調(diào)用plt.savefig(快速繪圖繪制多軸圖一個繪圖對象(figure)可以包含多個軸(axis),在Matplotlib中用軸表示一個繪圖區(qū)域,可以將其理解為子圖。上面的第一個例子中,繪圖對象只包括一個軸,因此只顯示了一個軸(子圖(Axes))。可以使用subplot函數(shù)快速繪制有多個軸的圖表。subplot函數(shù)的調(diào)用形式如下:subplot(numRows,numCols,plotNum)93ppt課件快速繪圖繪制多軸圖subplot(numRows,numC快速繪圖subplot將整個繪圖區(qū)域等分為numRows行和numCols列個子區(qū)域,然后按照從左到右,從上到下的順序?qū)γ總€子區(qū)域進行編號,左上的子區(qū)域的編號為1。如果numRows,numCols和plotNum這三個數(shù)都小于10的話,可以把它們縮寫為一個整數(shù),例如subplot(323)和subplot(3,2,3)是相同的。subplot在plotNum指定的區(qū)域中創(chuàng)建一個軸對象。如果新創(chuàng)建的軸和之前創(chuàng)建的軸重疊的話,之前的軸將被刪除。94ppt課件快速繪圖subplot將整個繪圖區(qū)域等分為快速繪圖下面的程序創(chuàng)建3行2列共6個軸,通過axisbg參數(shù)給每個軸設(shè)置不同的背景顏色。如果希望某個軸占據(jù)整個行或者列的話,可以如下調(diào)用subplot:foridx,colorinenumerate("rgbyck"):plt.subplot(320+idx+1,axisbg=color)plt.show()plt.subplot(221)#第一行
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026浙江紹興市應急管理局選調(diào)下屬事業(yè)單位人員1人參考考試題庫附答案解析
- 2026河南周口淮陽楚氏骨科醫(yī)院招聘備考考試試題附答案解析
- 街道生產(chǎn)經(jīng)營監(jiān)管制度
- 2026國家電投云南國際校園招聘48人備考考試試題附答案解析
- 調(diào)運員安全生產(chǎn)責任制度
- 安全生產(chǎn)診斷檢查制度
- 制劑生產(chǎn)計劃管理制度
- 塑粉生產(chǎn)車間制度
- 生產(chǎn)車間工模管理及制度
- 2026山東事業(yè)單位統(tǒng)考煙臺黃渤海新區(qū)鎮(zhèn)街招聘7人參考考試題庫附答案解析
- 湖北省2024-2025學年高二上學期期末考試英語含答案
- 鐵路物資管理培訓課件
- 2025年國家能源集團有限責任公司招聘筆試面試真題題庫(含答案)
- (人教A版)必修一高一數(shù)學上冊同步分層練習1.3 并集與交集第1課時(原卷版)
- 完整銀行貸款合同5篇
- 2025版地暖施工項目進度管理與結(jié)算合同
- 2025年事業(yè)單位公開招聘考試(D類)《職業(yè)能力傾向測驗》新版真題卷(附詳細解析)
- 2025年尾礦綜合利用技術(shù)突破與生態(tài)修復技術(shù)協(xié)同創(chuàng)新研究
- 評定與追溯管理制度
- 武漢科技大學c語言期末試卷及答案
- T/CAS 612-2022碳中和管理體系要求
評論
0/150
提交評論