matlab 如何画二维图形,Matlab 学习 画图篇 一 二维图形
matlab給繪制二維圖形提供了很多的函數,把一些繪制二維圖形的基本函數做成一張表,如下圖所示:
我就按照表的順序一一記錄一些個函數的簡略用法。
首先是
1.plot函數
plot函數有很多重載方法,這里只做簡單的介紹
1.1 plot(Y)
1.1 ?若Y是向量,繪制向量Y對其索引值的曲線。
1.2?若Y是實數矩陣,繪制矩陣的每列對應于行數的曲線集合。
1.3 ?若Y是復數矩陣,等價于plot(real(Y),imag(Y));
1.2 plot(X,Y)
1.2.1 ? 若X,Y,均為向量,繪制向量Y對應向量X的曲線此時X的長度跟Y的長度必須相等。
1.2.2 ?若X為向量Y為矩陣,則X的長度與矩陣Y的行數或列數必須相等:
1.2.2.1 ? ? ? X的長度與Y的列數相等,或X的長度與矩陣Y的行數和列數均相等(Y為方陣),繪制矩陣Y的每列對應X的曲線集合
1.2.2.2 ? ? ? X的長度與Y的行數相等,繪制矩陣Y的每行對應X的曲線集合
1.2.2 ?若X為矩陣Y為向量,則Y的長度與矩陣X的行數或列數必須相等,繪制方法與1.2.1類似,不在過多介紹
圖略
1.2.3 ?若X,Y均為矩陣,則X,Y的大小必須相等,繪制矩陣Y的每列對應X的每列的曲線。
P.S 如果矩陣是復數矩陣,會自動忽略掉復數的虛部。。。。。
1.3 plot(X,Y,LineSpec)
繪制Y對應于X的曲線集合,并指定曲線的LineSpec,比如線型,標記符號,和顏色或其任意組合,API上關于LineSpec的講解很詳細。
1.4 plot(X,Y,‘屬性’,屬性值)
跟1.3 相比,只是屬性值得不同。API上有很多
P.S ?1. 有一種調用的方法 ?h = ?plot(x....) ?返回和曲線的句柄,其實感覺就像是指針
2.semilogx ?semilogy ?和 loglog 等函數的使用方法和plot基本類似,只是在曲線的外觀上有所不同
2.plotyy函數
這個函數又叫雙Y軸函數(上面的例子都是單Y軸函數,只有左側一個Y軸)。plotyy是為了滿足 :對函數值變化范圍較大的兩組數據同事繪圖(這個時候用hold on,會很難從圖形中辨識函數值變化范圍較小的那組數據變化趨勢的細節信息的,因為坐標系太大,所以才有這樣的雙坐標軸繪圖),
比如這么樣的一個表格:
3.polar函數
前面的函數都是在直角坐標系的繪圖的,但是有時候需要在極坐標或者柱坐標中繪圖,于是就有了poltar(極坐標繪圖函數)
>> polar(theta,rho,LineSpec) ? ? 其中theta是極腳,rho是極徑,其他的方法跟其他繪圖函數基本相同。
網上找了個例子:
當然,還有很多坐標變換函數比如cart2pol 之類的,自行百度
4.fplot函數
如果不太了解某個函數隨自變量的變化趨勢,隨便的就取定自變量的范圍,很可能就用為自變量取值范圍不好而是的繪制出的圖片失真,為解決此問題可以使用fplot。這個函數,據說可以通過其內部的自適應算法動態的決定自變量的間隔。比如,函數值得變化較為劇烈,那么自變量的取值間隔就小。從而保證繪制出的圖形的質量和效率。
繪制出的圖形的質量和效率。
基本的調用函數形式為:
fplot(fun,limits)其中,fun為要繪制的函數,fun可以為可執行字符串,M文件,inline或者匿名函數。fun為要繪制的函數,limits為指定的范圍,可以使二維向量平[xmin,xmax]或四維向量[xmin,xmax,ymin,ymax]
比如:
5.ezplot函數
ezplot函數可以直接繪制一元函數 如 ? ? y=f(x) ?參數方程
? 構成的函數y=f(x),以及隱函數f(x,y)=0的圖形。
它的調用跟fplot類似,基本的調用方法是:
ezplot(fun,limits) ? 參見4.
至此,二維圖形的繪制只剩下子圖和交互式繪圖了。
子圖
為了突出的對比幾個相似圖形,一般可以使用子圖(subplot),這樣就可以在一個figure中做若干個圖。
使用方法:subplot(m,n,p)
其中,m表示是圖排成m行,n表示圖排成n列,也就是整個figure中有n個圖是排成一列的,一共m行,如果m=2就是表示2行圖。p表示圖所在的位置,p=1表示從左到右從上到下的第一個位置。
網上找了個例子:
交互式繪圖
交互式繪圖的常用方法是:ginput,gtext
在繪圖前調用,然后在調用繪圖函數,即可。比如用ginput可以方便的通過鼠標來讀取二維平面圖形的任意一個點的坐標值。當調用時,如ginput,會是當前的圖形從后臺調到前臺,然后咱們可以移動鼠標點擊想要選取的點,完成后(到可N值,或按下space),會在命令窗口看見點的坐標
總結
以上是生活随笔為你收集整理的matlab 如何画二维图形,Matlab 学习 画图篇 一 二维图形的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 上古卷轴5魅魔怎么变身
- 下一篇: 如何使用Carplay车载系统