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