matlab画图函数基本使用(适合新手)
matlab畫圖函數(shù)基本使用(適合新手)
- 畫圖
- 1. 散點(diǎn)圖(scatter()函數(shù)):
- 2. 函數(shù)圖像(plot()函數(shù)):
- 1. 在同一張圖繪制多條曲線
- 2. 改變顏色和大小
- 3.限制X Y坐標(biāo)軸范圍
- 4.grid on 加上網(wǎng)格線
- 5. subplot函數(shù)繪制多個(gè)子圖
- 3.擬合N階曲線(polyfit()函數(shù)和polyval()函數(shù))
畫圖
1. 散點(diǎn)圖(scatter()函數(shù)):
scatter(X,Y) 簡(jiǎn)單來(lái)用給出X Y的值通過(guò)函數(shù)便能在該坐標(biāo)上畫出一個(gè)圓圈,例如
scatter(1,2)
如果將X Y替換成長(zhǎng)度相同的數(shù)組(長(zhǎng)度不同自然無(wú)法一一對(duì)應(yīng))便能夠畫出多組點(diǎn)
我們可能根據(jù)實(shí)際的需要,會(huì)調(diào)整圓圈大小和顏色,那么就要在scatter()后面添加相應(yīng)的變量
scatter(X,Y,S,C)
S 必須為標(biāo)量或長(zhǎng)度與 X 相同的矢量。
(如果S是標(biāo)量,則MATLAB繪制所有標(biāo)記的大小相同。如果S是矢量,則分別對(duì)應(yīng)為X、Y所確定圓的大小)
C 必須為 RGB 三元數(shù)、與 X 長(zhǎng)度相同的 M×1 矢量或 M×3 矩陣。
在scatter(x,y,s,c,A) 改變A的“值”可以將“點(diǎn)”做相應(yīng)的轉(zhuǎn)換
’filled‘ --------------------------------------實(shí)心圓
‘s’ -------------------------------------------正方形
’d‘--------------------------------------------菱形
’.’---------------------------------------------點(diǎn) (實(shí)用性強(qiáng)!)
‘p’--------------------------------------------?(配上顏色很好看!)
2. 函數(shù)圖像(plot()函數(shù)):
??
plot()函數(shù)為我們提供了繪制函數(shù)圖像的功能,通過(guò)plot(x,y)變可繪制函數(shù)圖像
x = 0:pi/100:2*pi; y = sin(x); plot(x,y)??
下面交代一下此函數(shù)使用需注意的地方和一些擴(kuò)展使用:
??
1. 在同一張圖繪制多條曲線
x1 = linspace(-2*pi,2*pi); x2 = linspace(0,4*pi); y1 = sin(x1); y2 = cos(x2);figure plot(x1,y1,x2,y2)運(yùn)行結(jié)果:
??
??
也可以通過(guò)hold on hold off語(yǔ)句實(shí)現(xiàn):(效果相同)
代碼如下:
??
??
??
2. 改變顏色和大小
plot(x1,y1,‘c’,x2,y2,‘y’) 后面加上相應(yīng)的顏色變可改變曲線顏色便于區(qū)分(系統(tǒng)會(huì)默認(rèn)藍(lán)和紅,自古紅藍(lán)出CP)
同樣plot(x1,y1,x2,y2,’–’,x,y3,’:’) 可以改變曲線類型,
b代表BLUE , - -代表曲線類型, 讀者自行嘗試使用
??
??
3.限制X Y坐標(biāo)軸范圍
3.加入ylim([a,b])和xlim([c,d])來(lái)確定函數(shù)x,y的 范圍:
x = [-5 -eps(1) 0 eps(1) 5]; y = sign(x); plot(x,y) grid on
??
可以看出Y的范圍是-1到1畫出的圖像也剛好定格,這樣十分不美觀,我們利用ylim()加以修飾,代碼如下:
x = [-5 -eps(1) 0 eps(1) 5]; y = sign(x); plot(x,y) ylim([-2 2]) grid on??
??
??
4.grid on 加上網(wǎng)格線
在上面的例子中,加入了grid on 所以圖中就會(huì)出現(xiàn)網(wǎng)格
??
??
??
5. subplot函數(shù)繪制多個(gè)子圖
subplot(m,n,p)在mXn的區(qū)域內(nèi)繪制圖像,p為第幾個(gè)子圖。
x = linspace(0,10); y1 = sin(x); y2 = sin(2*x); y3 = sin(4*x); y4 = sin(8*x); figure subplot(2,2,1) plot(x,y1) title('Subplot 1: sin(x)')subplot(2,2,2) plot(x,y2) title('Subplot 2: sin(2x)')subplot(2,2,3) plot(x,y3) title('Subplot 3: sin(4x)')subplot(2,2,4) plot(x,y4) title('Subplot 4: sin(8x)')3.擬合N階曲線(polyfit()函數(shù)和polyval()函數(shù))
polyfit()基本使用:
polyfit(x,y,n)擬合N階多項(xiàng)式系數(shù)(注意這里只是擬合系數(shù),并不能畫出函數(shù)圖像,需要借助其他函數(shù)繪制擬合曲線的函數(shù)圖像)
p(x)=p1xn+p2xn?1+…+pnx+pn+1
x = linspace(0,4*pi,10); y = sin(x); p = polyfit(x,y,7)運(yùn)行結(jié)果如下:
p =
-0.0001 0.0028 -0.0464 0.3702 -1.3808 1.9084 -0.1141 0.0002
在這里在介紹一種函數(shù) polyval()用于函數(shù)估值運(yùn)算
p = [3 2 1]; polyval(p,[5 7 9])結(jié)果為:
ans =
86 162 262也就是當(dāng) p(x)=3X^2+2X+1時(shí),X分別等于5,7,9的值。
所以可以將兩個(gè)函數(shù)一起使用,即用polyfit()函數(shù)給出擬合曲線系數(shù),再用polyval()函數(shù)計(jì)算擬合后曲線的Y值,有了X,Y我們就可以畫出擬合后曲線的圖像。`
x = linspace(0,1,5); y = 1./(1+x);p = polyfit(x,y,4);x1 = linspace(0,2); y1 = 1./(1+x1); f1 = polyval(p,x1);figure plot(x,y,'o') hold on plot(x1,y1) plot(x1,f1,'r--') legend('y','y1','f1')總結(jié)
以上是生活随笔為你收集整理的matlab画图函数基本使用(适合新手)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: matlab --- 图像处理基础
- 下一篇: matlab画图函数之plot【matl