了解點(diǎn)兒MATLAB,知道它非常有用,但一直不太會(huì)用,如何快速掌握并運(yùn)用它呢?
本專欄力爭(zhēng)用最簡(jiǎn)潔的語言和邏輯,讓您在最短時(shí)間內(nèi),學(xué)到教材課程中罕見的MATLAB運(yùn)用技法,從新手邁向成手。
MATLAB不僅是處理矩陣的神器,還是矩陣可視化的神器。
什么叫矩陣可視化?
其實(shí),我們分析數(shù)據(jù)/處理信號(hào)/解析圖像等等這一類的操作,都是對(duì)矩陣的操作,并把它可視化出來。
水波圖像看著復(fù)雜,其實(shí)無非是可視化的矩陣而已
plot,用來繪制二維的圖線。
自動(dòng)彈出一個(gè)界面并顯示結(jié)果
觀察一下代碼,x是從0到2pi(也就是360度),間隔是pi/100,也就是說,分成了200小段。
x是個(gè)向量,所以y=sin(x)也是一個(gè)相同尺寸的向量。
plot(x,y)就是把對(duì)應(yīng)位置的xy連成直線。
有同學(xué)會(huì)問了,我明明看到的是曲線,你怎么說是直線?
這樣,我把x變成 x = 0:pi/5:2*pi ,再看看結(jié)果:
分的段過少,圖線誤差就大,變成折線了
所以說,完全取決于分成多少小段,類似于圖像處理中的分辨率。
一張圖中,為了方便對(duì)比,想一起畫n條曲線,怎么做呢?
x = linspace(-2*pi,2*pi);y1 = sin(x);y2 = cos(x);figureplot(x,y1,x,y2)
一圖多線,方便對(duì)比
說明:linspace的用法類似于冒號(hào);需要寫2遍x,不可遺漏。
plot太常用了,是繪圖的基礎(chǔ),大家一定help看一下,這里再詳細(xì)補(bǔ)充一下。
plot還有太多功能了,比如:
來個(gè)例子吧。
一張大圖中包含兩個(gè)小圖
這里的subplot(2,1,1)明顯又是矩陣思維,“2,1” 不就是代表2行1列的意思么!
所以說,矩陣思維貫穿MATLAB始終。
y = [2 2 3; 2 5 6; 2 8 9; 2 11 12];bar(y)
自動(dòng)分組,自動(dòng)上色
挺方便的吧,幾個(gè)數(shù)字就完成一張圖的繪制。
這里觀察y的結(jié)構(gòu)和bar圖的對(duì)應(yīng)關(guān)系,可以知道,每一行被認(rèn)為是一組,每一列是一類數(shù)據(jù)共用同樣的顏色。
誤差線圖errorbar是條形圖中很常用的形式了,尤其學(xué)工程尤其醫(yī)學(xué)工程類的同學(xué),是不可不知的——
誤差線圖——每個(gè)“工”字形代表這個(gè)數(shù)據(jù)的誤差范圍
x = randn(1000,3); hist(x)
能看出正態(tài)分布的趨勢(shì)么?
這里使用了一個(gè)正態(tài)分布的隨機(jī)函數(shù)randn,1000行3列。
一看名字就知道她的美麗了,為啥叫“玫瑰”呢?請(qǐng)看——
多像一朵玫瑰花
這是極坐標(biāo)下的直方圖形式,需要注意的是,雖然有點(diǎn)像,但它并不是傳統(tǒng)意義上的餅圖,因?yàn)轱瀳D有專用的函數(shù)——
X = [1 3 0.5 2.5 2];pie(X)
自動(dòng)產(chǎn)生比重值和顏色
X是一個(gè)向量,每個(gè)元素代表一類對(duì)象的值。
再來一個(gè)高級(jí)用法:
MATLAB的餅圖也挺好看的吧
聯(lián)系客服