MATLAB總結(jié)
MATLAB總結(jié)
一、散點圖
1.1.命令plot
功能線性二維圖。在線條多于一條時,若用戶沒有指定使用顏色,則plot循環(huán)使用由當前坐標軸顏色順序?qū)傩裕╟urrentaxesColorOrderproperty)定義的顏色,以區(qū)別不同的線條。在用完上述屬性值后,plot又循環(huán)使用由坐標軸線型順序?qū)傩裕╝xesLineStyleOrderproperty)定義的線型,以區(qū)別不同的線條。
用法plot(X,Y)當X,Y均為實數(shù)向量,且為同維向量(可以不是同型向量),X=[x(i)],
Y=[y(i)],則plot(X,Y)先描出點(x(i),y(i)),然后用直線依次相連;若X,Y為復數(shù)向量,則不考慮虛數(shù)部分。若X,Y均為同維同型實數(shù)矩陣,X=[X(i)],Y=[Y(i)],其中X(i),Y(i)為列向量,則plot(X,Y)依次畫出plot(X(i),Y(i)),矩陣有幾列就有幾條線;若X,Y中一個為向量,另一個為矩陣,且向量的維數(shù)等于矩陣的行數(shù)或者列數(shù),則矩陣按向量的方向分解成幾個向量,再與向量配對分別畫出,矩陣可分解成幾個向量就有幾條線;在上述的幾種使用形式中,若有復數(shù)出現(xiàn),則復數(shù)的虛數(shù)部分將不被考慮。
plot(Y)若Y為實數(shù)向量,Y的維數(shù)為m,則plot(Y)等價于plot(X,Y),其中x=1:m;
若y為實數(shù)矩陣,則把y按列的方向分解成幾個列向量,而y的行數(shù)為n,則plot(Y)等價于plot(X,Y)其中x=[1;2;…;n];在上述的幾種使用形式中,若有復數(shù)出現(xiàn),則復數(shù)的虛數(shù)部分將不被考慮。
plot(X1,Y1,X2,Y2,…),其中Xi與Yi成對出現(xiàn),plot(X1,Y1,X2,Y2,…)將分別按順序
取兩數(shù)據(jù)Xi與Yi進行畫圖。若其中僅僅有Xi或Yi是矩陣,其余的為向量,向量維數(shù)與矩陣的維數(shù)匹配,則按匹配的方向來分解矩陣,再分別將配對的向量畫出。
plot(X1,Y1,LineSpec1,X2,Y2,LineSpec2…)將按順序分別畫出由三參數(shù)定義
Xi,Yi,LineSpeci的線條。其中參數(shù)LineSpeci指明了線條的類型,標記符號,和畫線用的顏色。在plot命令中我們可以混合使用三參數(shù)和二參數(shù)的形式:
plot(X1,Y1,LineSpec1,X2,Y2,X3,Y3,LineSpec3)
plot(…,"PropertyName",PropertyValue,…)對所有的用plot生成的line圖形對象中指定
的屬性進行恰當?shù)脑O置。
h=plot(…)返回line圖形對象句柄的一列向量,一線條對應一句柄值。
說明參數(shù)LineSpec功能定義線的屬性。Maltab允許用戶對線條定義如下的特性:1.線型
表7-1
定義符線型-實線(缺省值)--劃線:點線-.點劃線2.線條寬度指定線條的寬度,取值為整數(shù)(單位為像素點)3.顏色表7-2定義符顏色定義符顏色R(red)紅色M(magenta)品紅G(green)綠色y(yellow)黃色b(blue)蘭色k(black)黑色c(cyan)青色w(white)白色4.標記類型表7-3定義符標記類型定義符標記類型定義符標記類型+加號d棱形s正方形o(字母)小圓圈^向上三角形h正六角星*星號v向下三角形P正五角星.實點>向右三角形x交叉號指定標記符顏色或者是標記符(小圓圈、正方形、棱形、正五角星、正六角星和四個方向的三角形)周邊線條的顏色。取值在上表。
在所有的能產(chǎn)生線條的命令中,參數(shù)LineSepc可以定義線條的下面三個屬性:線型、標記符號、顏色進行設置。對線條的上述屬性的定義可用字符串來定義,如:plot(x,y,"-.or")
結(jié)合x和y,畫出點劃線(-.),在數(shù)據(jù)點(x,y)處畫出小圓圈(o),線和標記都用紅色畫出。其中定義符(即字符串)中的字母、符號可任意組合。若沒有定義符,則畫圖命令plot自動用缺省值進行畫圖。若僅僅指定了標記符,而非線型,則plot只在數(shù)據(jù)點畫出標記符。
1.2.命令scatter(x1,y,50,c,"o","filled")
二、一元線性回歸
2.1.命令polyfit最小二乘多項式擬合[p,S]=polyfit(x,y,m)
多項式y(tǒng)=a1xm+a2xm-1+…+amx+am+1
其中x=(x1,x2,…,xm)x1…xm為(n*1)的矩陣;y為(n*1)的矩陣;
p=(a1,a2,…,am+1)是多項式y(tǒng)=a1xm+a2xm-1+…+amx+am+1的系數(shù);S是一個矩陣,用來估計預測誤差.2.2.命令polyval多項式函數(shù)的預測值
Y=polyval(p,x)求polyfit所得的回歸多項式在x處的預測值Y;p是polyfit函數(shù)的返回值;x和polyfit函數(shù)的x值相同。2.3.命令polyconf殘差個案次序圖
[Y,DELTA]=polyconf(p,x,S,alpha)求polyfit所得的回歸多項式在x處的預測值Y及預測值的顯著性為1-alpha的置信區(qū)間DELTA;alpha缺省時為0.05。p是polyfit函數(shù)的返回值;x和polyfit函數(shù)的x值相同;S和polyfit函數(shù)的S值相同。
2.4命令polytool(x,y,m)一元多項式回歸命令2.5.命令regress多元線性回歸(可用于一元線性回歸)b=regress(Y,X)
[b,bint,r,rint,stats]=regress(Y,X,alpha)b回歸系數(shù)
bint回歸系數(shù)的區(qū)間估計r殘差
rint殘差置信區(qū)間
stats用于檢驗回歸模型的統(tǒng)計量,有三個數(shù)值:相關系數(shù)R2、F值、與F對應的概率p,相關系數(shù)R2越接近1,說明回歸方程越顯著;F>F1-α(k,n-k-1)時拒絕H0,F(xiàn)越大,說明回歸方程越顯著;與F對應的概率p時拒絕H0,回歸模型成立。
Y為n*1的矩陣;
X為(ones(n,1),x1,…,xm)的矩陣;alpha顯著性水平(缺省時為0.05)。
三、多元線性回歸
3.1.命令regress(見2。5)3.2.命令rstool多元二項式回歸命令:rstool(x,y,’model’,alpha)x為n*m矩陣y為n維列向量
model由下列4個模型中選擇1個(用字符串輸入,缺省時為線性模型):linear(線性):
purequadratic(純二次):interaction(交叉):quadratic(完全二次):
alpha顯著性水平(缺省時為0.05)返回值beta系數(shù)返回值rmse剩余標準差返回值residuals殘差--------------------------------------------五、其它
命令gridon
命令axis(坐標軸)([06000.025])命令figure彈出新的畫圖窗口命令獲取矩陣的某行某列
x(n,:);獲取矩陣的第n行x(:,n);獲取矩陣的第n列命令rcoplot
畫出殘差及其置信區(qū)間:rcoplot(r,rint)glmfit一般線性模型擬合regstats回歸統(tǒng)計量診斷regstats(responses,DATA,"model")"
stats=regstats(responses,DATA,"model","whichstats")"Q"QfromtheQRDecompositionofX"R"RfromtheQRDecompositionofX
"beta"RegressionCoefficients"covb"CovarianceofRegressionCoefficients"yhat"FittedValuesoftheResponseData"r"Residuals
"mse"MeanSquaredError
"leverage"Leverage"hatmat"Hat(Projection)Matrix"s2_i"Delete-1Variance"beta_i"Delete-1Coefficients"standres"StandardizedResiduals"studres"StudentizedResiduals"dfbetas"ScaledChangeinRegression
Coefficients"dffit"ChangeinFittedValues"dffits"ScaledChangeinFittedValues"covratio"ChangeinCovariance"cookd"Cook"sDistance"all"Createalloftheabovestatistics命令bar(條圖)命令pie(餅圖)命令hist(直方圖)命令help
命令mean(平均值)命令inv(逆概率分布)命令pdf(密度)命令cdf(分布函數(shù))命令stat(均差與方差)命令rnd(隨機函數(shù))命令std(標準差)命令var(方差)命令median(中位數(shù))命令skewness(偏度)命令kurtosis(峰度)命令norm(正態(tài)分布)命令t(t分布)命令f(f分布)命令chr2(x2分布)命令poiis(泊松分布)
擴展閱讀:matlab心得
學習Matlab心得體會
學習Matlab已經(jīng)有一段時間了,對Matlab編程有了一定的了解。下面談談自己近期的學習心得。
第一節(jié)的時候我們對Matlab有了初步的認識:Matlab是“矩陣實驗室(matrixlaboratoy)”的縮寫,它是一種與數(shù)學水平密切相關的算法語言,專門針對科學、工程計算及繪圖的需求。Matlab的應用范圍非常廣,包括信號和圖像處理、通訊、控制系統(tǒng)設計、測試和處理、財務建模和分析以及計算機生物學等眾多應用領域。附加的工具箱擴展了Matlab環(huán)境,以解決這些領域的特定性問題。比如說在自動控制理論中用的比較多的是根軌跡,相平面,傳遞函數(shù),拉普拉斯變換,乃氏曲線等。在電機控制里面還有很多仿真實驗,也經(jīng)常用,對于輔助分析,也是很好用的。
我們已經(jīng)學習過C語言,不難發(fā)現(xiàn)Matlab的編程基本語法學習起來很快的,和C語言很類似,而且支持C語言函數(shù)的,或者說函數(shù)就是用C語言編的。大一時學習線性代數(shù),對矩陣又有了一定的了解,為今天學習Matlab打下了一定的基礎。從matlab的名字的來源可以看出,它以矩陣運算常見,在當今的科學計算中,幾乎無處不用矩陣運算,這是它的優(yōu)勢得到了充分的體現(xiàn)。
隨著學習的課時的增加,我們對Matlab的有了深入而實質(zhì)性的了解。首先我們學習了Matlab的數(shù)學運算、程序設計、程序調(diào)試、Matlab繪圖及圖形句柄,最后我們又學習了Matlab的圖形用戶界面設計。經(jīng)過幾次實驗課,我們學會了M文件編程及程序調(diào)試,學會利用help這一命令對程序進行解釋。
Matlab是以解釋方式工作的,即它對每條語句解釋后立即執(zhí)行,若有錯誤也立即做出反應,便于對程序進行修改,大大減輕了編程和調(diào)試的工作量。它靈活、方便,程序調(diào)試手段豐富,調(diào)試速度快。Matlab語言像Basic和C語言一樣規(guī)定了矩陣的算算術運算符、關系運算符、邏輯運算符、條件運算符及賦值運算符等。Matlab的繪圖功是十分方便的,在調(diào)用繪圖函數(shù)時調(diào)整自變量可繪制出不同顏色的點、線、復線或多重線,這是通用的編程語言所不及的。Matlab的工作環(huán)境主要由命令窗口、圖形窗口、和文本編輯窗口組成。
當然,matlab與其它計算機語言相比,有其獨特的優(yōu)點。特點如下:Matlab把編輯、編譯、連接以及執(zhí)行融為一體,加快了編寫、修改、和調(diào)試程序的速度,或者說是一種比VB還要簡單的語言。Matlab語言的內(nèi)容極為豐富,它的各種函數(shù)都與數(shù)學領域有關,它的起點高,編程效率高,用戶使用方便,智能化程度高,人機交互性好,功能豐富,可擴展性強。
通過這段時間的理論學習及實驗,我覺得要提高matlab編程能力的方法有以下幾點:(1)利用help,lookfor等功能對程序進行編譯修改。(2)多上網(wǎng)查資料,上論壇,搜索帖子、發(fā)帖子問人(3)閱讀別人、特別是一些高級技術人員的程序,在閱讀的過程中進行學習,學習別人的編程方法。(4)還要有一本matlab的函數(shù)工具詞典,可以盡量多的熟悉matlab自帶的函數(shù),因為matlab自帶的函數(shù)特別多,基本上能夠滿足一般的數(shù)據(jù)和矩陣的計算。當然了,正如所有的程序語言一樣,“3分課本7分上機”,一定要動手才行,不能光看。多想、多思考、多嘗試,才是正路。
記得上第一節(jié)課時,老師給我們放得ppt上有這樣一句話:學會Matlab將改變你的一生,網(wǎng)絡對你的改變將遠遠的超過一臺獨立的計算機!作為一名電氣工程及其自動化的一名學生,學好Matlab是非常有用的,擴展就業(yè)方向,為將來就業(yè)打下良好的基礎!
最后,感謝老師您這么久以來對我們的諄諄教導!我們不會忘記您對我們的細心輔導,不會忘記您在我們瞌睡的時候給我們的講的故事
友情提示:本文中關于《MATLAB總結(jié)》給出的范例僅供您參考拓展思維使用,MATLAB總結(jié):該篇文章建議您自主創(chuàng)作。
來源:網(wǎng)絡整理 免責聲明:本文僅限學習分享,如產(chǎn)生版權問題,請聯(lián)系我們及時刪除。