MATLAB作為線性系統(tǒng)的一種分析和仿真工具_第1頁
MATLAB作為線性系統(tǒng)的一種分析和仿真工具_第2頁
MATLAB作為線性系統(tǒng)的一種分析和仿真工具_第3頁
MATLAB作為線性系統(tǒng)的一種分析和仿真工具_第4頁
MATLAB作為線性系統(tǒng)的一種分析和仿真工具_第5頁
已閱讀5頁,還剩107頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

MATLAB入門1/11/2023

MATLAB作為線性系統(tǒng)的一種分析和仿真工具,是理工科大學生應該掌握的技術工具,它作為一種編程語言和可視化工具,可解決工程、科學計算和數(shù)學學科中許多問題。

MATLAB建立在向量、數(shù)組和矩陣的基礎上,使用方便,人機界面直觀,輸出結果可視化。矩陣是MATLAB的核心MATLAB的進入與運行方式(兩種)1/11/2023

MATLAB入門一、變量與函數(shù)二、數(shù)組三、矩陣四、MATLAB編程五、實驗作業(yè)1/11/2023

1、變量

MATLAB中變量的命名規(guī)則是:(1)變量名必須是不含空格的單個詞;(2)變量名區(qū)分大小寫;(3)變量名最多不超過19個字符;(4)變量名必須以字母打頭,之后可以是任意字母、數(shù)字或下劃線,變量名中不允許使用標點符號.

一、變量與函數(shù)1/11/2023特殊變量表1/11/20232、數(shù)學運算符號及標點符號(1)MATLAB的每條命令后,若為逗號或無標點符號,則顯示命令的結果;若命令后為分號,則禁止顯示結果.(2)“%”后面所有文字為注釋.(3)“...”表示續(xù)行.1/11/20233、數(shù)學函數(shù)1/11/2023

MATLAB的內部函數(shù)是有限的,有時為了研究某一個函數(shù)的各種性態(tài),需要為MATLAB定義新函數(shù),為此必須編寫函數(shù)文件.函數(shù)文件是文件名后綴為M的文件,這類文件的第一行必須是一特殊字符function開始,格式為:

function因變量名=函數(shù)名(自變量名)函數(shù)值的獲得必須通過具體的運算實現(xiàn),并賦給因變量.

4、M文件M文件建立方法:1.在Matlab中,點:File->New->M-file2.在編輯窗口中輸入程序內容

3.點:File->Save,存盤,M文件名必須與函數(shù)名一致。Matlab的應用程序也可以用M文件保存。1/11/2023例:定義函數(shù)f(x1,x2)=100(x2-x12)2+(1-x1)2functionf=fun(x)f=100*(x(2)-x(1)^2)^2+(1-x(1))^21.建立M文件:fun.mMATLAB(fun)2.可以直接使用函數(shù)fun.m例如:計算f(1,2),只需在Matlab命令窗口鍵入命令:x=[12]fun(x)

返回f=1001/11/2023x=logspace(first,last,n)

創(chuàng)建從開始,到結束,有n個元素的對數(shù)分隔行向量.1、創(chuàng)建簡單的數(shù)組二、數(shù)組MATLAB(shuzu1)x=[abcdef]

創(chuàng)建包含指定元素的行向量x=first:last

創(chuàng)建從first開始,加1計數(shù),到last結束的行向量x=first:increment:last

創(chuàng)建從first開始,加increment計數(shù),last結束的行向量x=linspace(first,last,n)

創(chuàng)建從first開始,到last結束,有n個元素的行向量1/11/2023x=[123458718]y=1:7z=3:2:9v=[yz]u=linspace(2,9,11)v=12345673579u=2.00002.70003.40004.10004.80005.50006.20006.90007.60008.30009.00001/11/2023

2、數(shù)組元素的訪問MATLAB(shuzu2)(3)直接使用元素編址序號.x([abcd])表示提取數(shù)組x的第a、b、c、d個元素構成一個新的數(shù)組[x(a)x(b)x(c)x(d)].(2)訪問一塊元素:

x(a:b:c)表示訪問數(shù)組x的從第a個元素開始,以步長為b到第c個元素(但不超過c),b可以為負數(shù),b缺損時為1.(1)訪問一個元素:

x(i)表示訪問數(shù)組x的第i個元素.1/11/2023x=1:9y=x(2:2:8)z=[x(1)x(6)x(8)]x=123456789y=2468z=1681/11/2023

3、數(shù)組的方向

前面例子中的數(shù)組都是一行數(shù)列,是行方向分布的.稱之為行向量.數(shù)組也可以是列向量,它的數(shù)組操作和運算與行向量是一樣的,唯一的區(qū)別是結果以列形式顯示.

產(chǎn)生列向量有兩種方法:直接產(chǎn)生例c=[1;2;3;4]

轉置產(chǎn)生例b=[1234];c=b’

說明:以空格或逗號分隔的元素指定的是不同列的元素,而以分號分隔的元素指定了不同行的元素.1/11/20234、數(shù)組的運算

(1)標量-數(shù)組運算數(shù)組對標量的加、減、乘、除、乘方是數(shù)組的每個元素對該標量施加相應的加、減、乘、除、乘方運算.設:a=[a1,a2,…,an],c=標量則:a+c=[a1+c,a2+c,…,an+c]a.*c=[a1*c,a2*c,…,an*c]a./c=[a1/c,a2/c,…,an/c](右除)

a.\c=[c/a1,c/a2,…,c/an](左除)

a.^c=[a1^c,a2^c,…,an^c]c.^a=[c^a1,c^a2,…,c^an]MATLAB(shuzu3)1/11/2023a=[1234]c=2a1=a+ca2=a*ca3=a./ca4=a.\ca5=a.^ca6=c.^aa=1234c=2a1=3456a2=2468a3=0.50001.00001.50002.0000a4=2.00001.00000.66670.5000a5=14916a6=248161/11/2023(2)數(shù)組-數(shù)組運算

當兩個數(shù)組有相同維數(shù)時,加、減、乘、除、冪運算可按元素對元素方式進行的,不同大小或維數(shù)的數(shù)組是不能進行運算的.

設:a=[a1,a2,…,an],b=[b1,b2,…,bn]則:a+b=[a1+b1,a2+b2,…,an+bn]a.*b=[a1*b1,a2*b2,…,an*bn]a./b=[a1/b1,a2/b2,…,an/bn]a.\b=[b1/a1,b2/a2,…,bn/an]a.^b=[a1^b1,a2^b2,…,an^bn]MATLAB(shuzu4)

返回1/11/2023a=[222]b=[333]c1=a+bc2=a.*bc3=a./bc4=a.\bc5=a.^bc1=555c2=666c3=0.66670.66670.6667c4=1.50001.50001.5000c5=8881/11/2023三、矩陣

逗號或空格用于分隔某一行的元素,分號用于區(qū)分不同的行.除了分號,在輸入矩陣時,按Enter鍵也表示開始一新行.輸入矩陣時,嚴格要求所有行有相同的列.

例m=[1234;5678;9101112]p=[111122223333]1、矩陣的建立1/11/2023特殊矩陣的建立:.MATLAB(matrix1)d=eye(m,n)產(chǎn)生一個m行、n列的單位矩陣c=ones(m,n)產(chǎn)生一個m行、n列的元素全為1的矩陣b=zeros(m,n)產(chǎn)生一個m行、n列的零矩陣a=[]產(chǎn)生一個空矩陣,當對一項操作無結果時,返回空矩陣,空矩陣的大小為零.1/11/2023m=[1234;5678;9101112]p=[111122223333]a=[]b=zeros(2,3)c=ones(2,3)d=eye(2,3)e=eye(3,3)d=100010e=1000100011/11/20232、矩陣中元素的操作MATLAB(matrix2)(1)矩陣A的第r行:A(r,:)(2)矩陣A的第r列:A(:,r)(4)取矩陣A的第i1~i2行、第j1~j2列構成新矩陣:A(i1:i2,j1:j2)(5)以逆序提取矩陣A的第i1~i2行,構成新矩陣:A(i2:-1:i1,:)(6)以逆序提取矩陣A的第j1~j2列,構成新矩陣:A(:,j2:-1:j1

)(7)刪除A的第i1~i2行,構成新矩陣:A(i1:i2,:)=[](8)刪除A的第j1~j2列,構成新矩陣:A(:,j1:j2)=[](9)將矩陣A和B拼接成新矩陣:[AB];[A;B](3)依次提取矩陣A的每一列,將A拉伸為一個列向量:A(:)1/11/2023a=[123;456;789]a1=a(2,:)a2=a(:,2)a3=a(:)a4=a(1:2,2:3)a5=a(2:-1:1,:)a6=a(:,3:-1:2)a7=a;a7(1:2,:)=[]a8=a;a8(:,1)=[]a9=[aa2]a10=[a;a1]a=123456789a1=456a2=258a3=147258369a4=23561/11/2023a=[123;456;789]a1=a(2,:)a2=a(:,2)a3=a(:)a4=a(1:2,2:3)a5=a(2:-1:1,:)a6=a(:,3:-1:2)a7=a;a7(1:2,:)=[]a8=a;a8(:,1)=[]a9=[aa2]a10=[a;a1]a5=456123a6=326598a7=789a8=235689a9=123245657898a10=1234567894561/11/2023

(2)矩陣-矩陣運算

[1]元素對元素的運算,同數(shù)組-數(shù)組運算。

3、矩陣的運算(1)標量-矩陣運算

同標量-數(shù)組運算。MATLAB(matrix3)

[2]矩陣運算:矩陣加法:A+B矩陣乘法:A*B方陣的行列式:det(A)方陣的逆:inv(A)方陣的特征值與特征向量:[V,D]=eig[A]

返回1/11/2023a=[123456]b=[121212]c1=a+ac2=a*bc=[273;394;153]c3=det(c)c4=inv(c)[v,d]=eig(c)c1=24681012c2=6121530c=273394153c3=-3c4=-2.33332.0000-0.33331.6667-1.0000-0.3333-2.00001.00001.00001/11/2023a=[123456]b=[121212]c1=a+ac2=a*bc=[273;394;153]c3=det(c)c4=inv(c)[v,d]=eig(c)v=-0.5515-0.7857-0.2743-0.73090.4412-0.3391-0.4020-0.43370.8999d=13.4635000-0.27470000.81121/11/2023關系與邏輯運算

1、關系操作符1/11/20232、邏輯運算符1/11/20231、for循環(huán):允許一組命令以固定的和預定的次數(shù)重復

forx=array{commands}end

在for和end語句之間的命令串{commands}按數(shù)組(array)中的每一列執(zhí)行一次.在每一次迭代中,x被指定為數(shù)組的下一列,即在第n次循環(huán)中,x=array(:,n)控制流MATLAB提供三種決策或控制流結構:

for循環(huán)、while循環(huán)、if-else-end結構.

這些結構經(jīng)常包含大量的MATLAB命令,故經(jīng)常出現(xiàn)在MATLAB程序中,而不是直接加在MATLAB提示符下.

例對n=1,2,…,10,求xn=的值MATLAB(for1)1/11/2023forn=1:10x(n)=sin(n*pi/10);endxx=0.30900.58780.80900.95111.00000.95110.80900.58780.30900.00001/11/2023

whileexpression{commands}end

只要在表達式(expression)里的所有元素為真,就執(zhí)行while和end語句之間的命令串{commands}.

2、While循環(huán)

與for循環(huán)以固定次數(shù)求一組命令相反,while循環(huán)以不定的次數(shù)求一組語句的值.MATLAB(while1)

例設銀行年利率為11.25%。將10000元錢存入銀行,問多長時間會連本帶利翻一番?1/11/2023money=10000years=0whilemoney<20000years=years+1money=money*(1+11.25/100)endyears=7money=2.1091e+0041/11/20233、If-Else-End結構(1)有一個選擇的一般形式是:

ifexpression{commands}end

如果在表達式(expression)里的所有元素為真,就執(zhí)行if和end語句之間的命令串{commands}.MATLAB(fun1)

先建立M文件fun1.m定義函數(shù)f(x),再在Matlab命令窗口輸入fun1(2),fun1(-1)即可。1/11/2023functionf=fun1(x)ifx>1f=x^2+1endifx<=1f=2*xend

fun1(2)f=5fun1(-1)f=-21/11/20232)有三個或更多的選擇的一般形式是:

if(expression1)

{commands1}elseif(expression2)

{commands2}elseif(expression3)

{commands3}elseif………………………else{commands}endendend……end1/11/2023

先建立M文件fun2.m定義函數(shù)f(x),再在Matlab命令窗口輸入fun2(2),fun2(0.5),fun2(-1)即可。MATLAB(fun2)

返回1/11/2023functionf=fun2(x)ifx>1f=x^2+1elseifx<=0f=x^3elsef=2*xendend

f=5f=1f=-11/11/2023(1)用起泡法對10個數(shù)由小到大排序.即將相鄰兩個數(shù)比較,將小的調到前頭.(2)有一個矩陣,編程求出其最大值及其所處的位置.(3)編程求(4)有一函數(shù),寫一程序,輸入自變量的值,輸出函數(shù)值.作業(yè)2:對以下問題,編寫M文件:

返回1/11/2023

MATLAB作圖1/11/2023Matlab作圖二維圖形三維圖形圖形處理實例作業(yè)特殊二、三維圖形1/11/2023

Matlab作圖是通過描點、連線來實現(xiàn)的,故在畫一個曲線圖形之前,必須先取得該圖形上的一系列的點的坐標(即橫坐標和縱坐標),然后將該點集的坐標傳給Matlab函數(shù)畫圖.命令為:PLOT(X,Y,S)PLOT(X,Y)--畫實線PLOT(X,Y1,S1,X,Y2,S2,……,X,Yn,Sn)--將多條線畫在一起X,Y是向量,分別表示點集的橫坐標和縱坐標線型y黃色.點-連線m洋紅o圈:短虛線c藍綠色xx-符號-.長短線r紅色+加號--長虛線1.曲線圖1/11/2023例在[0,2*pi]用紅線畫sin(x),用綠圈畫cos(x).x=linspace(0,2*pi,30);y=sin(x);z=cos(x);plot(x,y,'r',x,z,'o')解Matlabliti11/11/20232.符號函數(shù)(顯函數(shù)、隱函數(shù)和參數(shù)方程)畫圖(1)ezplotezplot(‘x(t)’,’y(t)’,[tmin,tmax])

表示在區(qū)間tmin<t<tmax繪制參數(shù)方程x=x(t),y=y(t)的函數(shù)圖ezplot(‘f(x)’,[a,b])

表示在a<x<b繪制顯函數(shù)f=f(x)的函數(shù)圖ezplot(‘f(x,y)’,[xmin,xmax,ymin,ymax])

表示在區(qū)間xmin<x<xmax和ymin<y<ymax繪制隱函數(shù)f(x,y)=0的函數(shù)圖1/11/2023例在[0,pi]上畫y=cos(x)的圖形解輸入命令ezplot('cos(x)',[0,pi])Matlabliti25解輸入命令

ezplot('cos(t)^3','sin(t)^3',[0,2*pi])Matlabliti41解輸入命令ezplot('exp(x)+sin(x*y)',[-2,0.5,0,2])Matlabliti401/11/20231/11/20231/11/20231/11/2023(2)fplot注意:[1]fun必須是M文件的函數(shù)名或是獨立變量為x的字符串.[2]fplot函數(shù)不能畫參數(shù)方程和隱函數(shù)圖形,但在一個圖上可以畫多個圖形。fplot(‘fun’,lims)

表示繪制字符串fun指定的函數(shù)在lims=[xmin,xmax]的圖形.1/11/2023解先建M文件myfun1.m:

functionY=myfun1(x)Y=exp(2*x)+sin(3*x.^2)再輸入命令:fplot(‘myfun1’,[-1,2])Matlabliti43Matlabliti28解輸入命令:

fplot(‘[tanh(x),sin(x),cos(x)]’,2*pi*[-11–11])例在[-2,2]范圍內繪制函數(shù)tanh的圖形解

fplot(‘tanh’,[-2,2])Matlabliti421/11/20231/11/20231/11/20231/11/20233.對數(shù)坐標圖

在很多工程問題中,通過對數(shù)據(jù)進行對數(shù)轉換可以更清晰地看出數(shù)據(jù)的某些特征,在對數(shù)坐標系中描繪數(shù)據(jù)點的曲線,可以直接地表現(xiàn)對數(shù)轉換.對數(shù)轉換有雙對數(shù)坐標轉換和單軸對數(shù)坐標轉換兩種.用loglog函數(shù)可以實現(xiàn)雙對數(shù)坐標轉換,用semilogx和semilogy函數(shù)可以實現(xiàn)單軸對數(shù)坐標轉換.loglog(Y)

表示x、y坐標都是對數(shù)坐標系semilogx(Y)

表示x坐標軸是對數(shù)坐標系semilogy(…)

表示y坐標軸是對數(shù)坐標系plotyy

有兩個y坐標軸,一個在左邊,一個在右邊1/11/2023例用方形標記創(chuàng)建一個簡單的loglog解輸入命令:

x=logspace(-1,2);loglog(x,exp(x),'-s')gridon%標注格柵Matlabliti37例創(chuàng)建一個簡單的半對數(shù)坐標圖解輸入命令:x=0:.1:10;semilogy(x,10.^x)Matlabliti38返回1/11/20231/11/20231/11/2023三維圖形1、空間曲線2、空間曲面返回1/11/2023PLOT3(x,y,z,s)

空間曲線

1、一條曲線

例在區(qū)間[0,10*pi]畫出參數(shù)曲線x=sin(t),y=cos(t),z=t.Matlabliti8解t=0:pi/50:10*pi;plot3(sin(t),cos(t),t)rotate3d%旋轉n維向量,分別表示曲線上點集的橫坐標、縱坐標、函數(shù)值指定顏色、線形等1/11/20231/11/2023

PLOT3(x,y,z)2、多條曲線例畫多條曲線觀察函數(shù)Z=(X+Y).^2.(這里meshgrid(x,y)的作用是產(chǎn)生一個以向量x為行、向量y為列的矩陣)Matlabliti9其中x,y,z是都是m*n矩陣,其對應的每一列表示一條曲線.解x=-3:0.1:3;y=1:0.1:5;[X,Y]=meshgrid(x,y);Z=(X+Y).^2;plot3(X,Y,Z)返回1/11/20231/11/2023空間曲面例畫函數(shù)Z=(X+Y).^2的圖形.解x=-3:0.1:3;y=1:0.1:5;[X,Y]=meshgrid(x,y);Z=(X+Y).^2;surf(X,Y,Z)shadingflat%將當前圖形變得平滑Matlabliti11(1)surf(x,y,z)畫出數(shù)據(jù)點(x,y,z)表示的曲面數(shù)據(jù)矩陣。分別表示數(shù)據(jù)點的橫坐標、縱坐標、函數(shù)值1/11/20231/11/2023(2)Mesh(x,y,z)解

x=-3:0.1:3;y=1:0.1:5;[X,Y]=meshgrid(x,y);Z=(X+Y).^2;mesh(X,Y,Z)Matlabliti24例

畫出曲面Z=(X+Y).^2在不同視角的網(wǎng)格圖.畫網(wǎng)格曲面數(shù)據(jù)矩陣。分別表示數(shù)據(jù)點的橫坐標、縱坐標、函數(shù)值1/11/20231/11/2023(3)meshz(X,Y,Z)

在網(wǎng)格周圍畫一個curtain圖(如,參考平面)解輸入命令:[X,Y]=meshgrid(-3:.125:3);Z=peaks(X,Y);

Meshz(X,Y,Z)例繪peaks的網(wǎng)格圖Matlabliti36返回1/11/20231/11/2023在圖形上加格柵、圖例和標注定制坐標圖形保持分割窗口縮放圖形改變視角圖形處理返回動畫1/11/20231、在圖形上加格柵、圖例和標注(1)GRIDON:加格柵在當前圖上

GRIDOFF:刪除格柵處理圖形(2)hh=xlabel(string):

在當前圖形的x軸上加圖例stringhh=ylabel(string):

在當前圖形的y軸上加圖例stringhh=title(string):

在當前圖形的頂端上加圖例stringhh=zlabel(string):

在當前圖形的z軸上加圖例string1/11/2023例在區(qū)間[0,2*pi]畫sin(x)的圖形,并加注圖例“自變量

X”、“函數(shù)Y”、“示意圖”,并加格柵.解

x=linspace(0,2*pi,30);y=sin(x);plot(x,y)

xlabel('自變量X')

ylabel('函數(shù)Y')title('示意圖')gridonMatlabliti21/11/2023

(3)hh=gtext(‘string’)命令gtext(‘string’)用鼠標放置標注在現(xiàn)有的圖上.運行命令gtext(‘string’)時,屏幕上出現(xiàn)當前圖形,在圖形上出現(xiàn)一個交叉的十字,該十字隨鼠標的移動移動,當按下鼠標左鍵時,該標注string放在當前十交叉的位置.例在區(qū)間[0,2*pi]畫sin(x),并分別標注“sin(x)””cos(x)”.解

x=linspace(0,2*pi,30);y=sin(x);z=cos(x);plot(x,y,x,z)gtext('sin(x)');gtext('cos(x)')Matlabliti3返回1/11/20231/11/20232、定制坐標Axis([xmin

xmax

ymin

ymax

zmin

zmax])例在區(qū)間[0.005,0.01]顯示sin(1/x)的圖形。解

x=linspace(0.0001,0.01,1000);y=sin(1./x);plot(x,y)axis([0.0050.01-11])Matlabliti4返回定制圖形坐標將坐標軸返回到自動缺省值Axisautox、y、z的最大、最小值1/11/20231/11/20233、圖形保持(1)holdonholdof例將y=sin(x)、y=cos(x)分別用點和線畫出在同一屏幕上。解

z=cos(x);y=sin(x);plot(x,z,':')holdonplot(x,y)zoomonMatlabliti5保持當前圖形,以便繼續(xù)畫圖到當前圖上釋放當前圖形窗口1/11/20231/11/2023(2)figure(h)例區(qū)間[0,2*pi]新建兩個窗口分別畫出y=sin(x);

z=cos(x)。解

x=linspace(0,2*pi,100);y=sin(x);z=cos(x);plot(x,y);title('sin(x)');pausefigure(2);plot(x,z);

title('cos(x)');Matlabliti6返回新建h窗口,激活圖形使其可見,并把它置于其它圖形之上1/11/20231/11/20231/11/20234、分割窗口h=subplot(mrows,ncols,thisplot)劃分整個作圖區(qū)域為mrows*ncols塊(逐行對塊訪問)并激活第thisplot塊,其后的作圖語句將圖形畫在該塊上。激活已劃分為mrows*ncols塊的屏幕中的第thisplot塊,其后的作圖語句將圖形畫在該塊上。命令Subplot(1,1,1)返回非分割狀態(tài)。subplot(mrows,ncols,thisplot)subplot(1,1,1)1/11/2023解

x=linspace(0,2*pi,100);y=sin(x);z=cos(x);a=sin(x).*cos(x);b=sin(x)./(cos(x)+eps)subplot(2,2,1);plot(x,y),title('sin(x)')subplot(2,2,2);plot(x,z),title('cos(x)')subplot(2,2,3);plot(x,a),title('sin(x)cos(x)')subplot(2,2,4);plot(x,b),title('sin(x)/cos(x)')例將屏幕分割為四塊,并分別畫出y=sin(x),z=cos(x),a=sin(x)*cos(x),b=sin(x)/cos(x)。Matlabliti7返回1/11/20231/11/20235、縮放圖形zoomon單擊鼠標左鍵,則在當前圖形窗口中,以鼠標點中的點為中心的圖形放大2倍;單擊鼠標右鍵,則縮小2倍解

x=linspace(0,2*pi,30);y=sin(x);Plot(x,y)zoomonMatlabliti13例縮放y=sin(x)的圖形zoomoff為當前圖形打開縮放模式關閉縮放模式返回1/11/20231/11/20236.

改變視角view

(1)view(a,b)

命令view(a,b)改變視角到(a,b),a是方位角,b為仰角。缺省視角為(-37.5,30)。解x=-3:0.1:3;y=1:0.1:5;[X,Y]=meshgrid(x,y);Z=(X+Y).^2;subplot(2,2,1);mesh(X,Y,Z)subplot(2,2,2);mesh(X,Y,Z);view(50,-34)subplot(2,2,3);mesh(X,Y,Z);view(-60,70)subplot(2,2,4);mesh(X,Y,Z);view([0,1,1])Matlabliti10例

畫出曲面Z=(X+Y).^2在不同視角的網(wǎng)格圖.

view用空間矢量表示的,三個量只關心它們的比例,與數(shù)值的大小無關,x軸view([1,0,0]),y軸view([0,1,0]),z軸view([0,0,1])。(2)view([x,y,z])返回1/11/20231/11/2023特殊二、三維圖形1、特殊的二維圖形函數(shù)2、特殊的三維圖形函數(shù)返回1/11/2023特殊的二維圖形函數(shù)1、極坐標圖:polar(theta,rho,s)

用角度theta(弧度表示)和極半徑rho作極坐標圖,用s指定線型。例解:theta=linspace(0,2*pi),

rho=sin(2*theta).*cos(2*theta);

polar(theta,rho,’g’)title(‘Polarplotofsin(2*theta).*cos(2*theta)’);Matlabliti151/11/20232、散點圖:scatter(X,Y,S,C)

在向量X和Y的指定位置顯示彩色圈.X和Y必須大小相同.解輸入命令:

loadseamountscatter(x,y,5,z)Matlabliti293、平面等值線圖:contour(x,y,z,n)

繪制n個等值線的二維等值線圖解輸入命令:[X,Y]=meshgeid(-2:.2:2,-2:.2:3);Z=X.*exp(-X.^2-Y.^2);[C,h]=contour(X,Y,Z);

clabel(C,h)

colormapcoolMatlabliti34例繪制seamount散點圖返回Seamount.mat

在\toolbox\matlab\demos1/11/20231/11/2023特殊的三維圖形函數(shù)1、空間等值線圖:contour3(x,y,z,n)

其中n表示等值線數(shù)。例山峰的三維和二維等值線圖。解[x,y,z]=peaks;subplot(1,2,1)contour3(x,y,z,16,'s')grid,xlabel('x-axis'),ylabel('y-axis')

zlabel('z-axis')title('contour3ofpeaks');subplot(1,2,2)contour(x,y,z,16,'s')grid,xlabel('x-axis'),ylabel('y-axis')title('contourofpeaks');Matlabliti181/11/20233、三維散點圖scatter3(X,Y,Z,S,C)在向量X,Y和Z指定的位置上顯示彩色圓圈.

向量X,Y和Z的大小必須相同.解輸入命令:[x,y,z]=sphere(16);X=[x(:)*.5x(:)*.75x(:)];Y=[y(:)*.5y(:)*.75y(:)];Z=[z(:)*.5z(:)*.75z(:)];S=repmat([1.75.5]*10,prod(size(x)),1);C=repmat([123],prod(size(x)),1);scatter3(X(:),Y(:),Z(:),S(:),C(:),'filled'),view(-60,60)例繪制三維散點圖。Matlabliti32返回1/11/2023helpsphereSPHEREGeneratesphere.[X,Y,Z]=SPHERE(N)generatesthree(N+1)-by-(N+1)matricessothatSURF(X,Y,Z)producesaunitsphere.[X,Y,Z]=SPHEREusesN=20.SPHERE(N)andjustSPHEREgraphthesphereasaSURFACEanddonotreturnanything.SeealsoELLIPSOID,CYLINDER.1/11/2023

helprepmat

REPMATReplicateandtileanarray.B=repmat(A,M,N)createsalargematrixBconsistingofanM-by-NtilingofcopiesofA.B=REPMAT(A,[MN])accomplishesthesameresultasrepmat(A,M,N).B=REPMAT(A,[MNP...])tilesthearrayAtoproduceaM-by-N-by-P-by-...blockarray.AcanbeN-D.REPMAT(A,M,N)whenAisascalariscommonlyusedtoproduceanM-by-NmatrixfilledwithA'svalue.ThiscanbemuchfasterthanA*ONES(M,N)whenMand/orNarelarge.Example:repmat(magic(2),2,3)repmat(NaN,2,3)SeealsoMESHGRID.1/11/20231/11/2023返回實驗作業(yè)1、將屏幕分割為四塊,并分別畫出y=sin(x),z=3*cos(x),a=sin(x)*cos(x),b=sin(x)/cos(x)。2、繪制y=x3的函數(shù)圖、對數(shù)坐標圖、半對數(shù)坐標圖,并加注圖例“自變量X”、“函數(shù)Y”、“示意圖”,并加格柵.1/11/2023實驗目的實驗內容直觀了解統(tǒng)計描述的基本內容。數(shù)據(jù)的統(tǒng)計描述1、基本概念。2、計算統(tǒng)計描述的命令。3、計算實例。4、實驗作業(yè)。1/11/2023基本概念一、統(tǒng)計量1/11/2023二、分布函數(shù)的近似求法1/11/20231/11/2023統(tǒng)計工具箱中的基本統(tǒng)計命令1.數(shù)據(jù)的錄入、保存和調用2.基本統(tǒng)計量3.常見概率分布的函數(shù)4.頻數(shù)直方圖的描繪5.綜合實例1/11/2023一、數(shù)據(jù)的錄入、保存和調用例1

上海市區(qū)社會商品零售總額和全民所有制職工工資總額的數(shù)據(jù)如下統(tǒng)計工具箱中的基本統(tǒng)計命令1/11/20231、年份數(shù)據(jù)以1為增量,用產(chǎn)生向量的方法輸入。命令格式:x=a:h:bt=78:872、分別以x和y代表變量職工工資總額和商品零售總額。

x=[23.8,27.6,31.6,32.4,33.7,34.9,43.2,52.8,63.8,73.4]y=[41.4,51.8,61.7,67.9,68.7,77.5,95.9,137.4,155.0,175.0]3、將變量t、x、y的數(shù)據(jù)保存在文件data中。

savedatatxy

4、進行統(tǒng)計分析時,調用數(shù)據(jù)文件data中的數(shù)據(jù)。

loaddatat=78:87;x=[23.8,27.6,31.6,32.4,33.7,34.9,43.2,52.8,63.8,73.4];y=[41.4,51.8,61.7,67.9,68.7,77.5,95.9,137.4,155.0,175.0];savedatatxy方法11/11/20231、輸入矩陣:data=[78,79,80,81,82,83,84,85,86,87,88;23.8,27.6,31.6,32.4,33.7,34.9,43.2,52.8,63.8,73.4;41.4,51.8,61.7,67.9,68.7,77.5,95.9,137.4,155.0,175.0]2、將矩陣data的數(shù)據(jù)保存在文件data1中:savedata1data3、進行統(tǒng)計分析時,先用命令:loaddata1

調用數(shù)據(jù)文件data1中的數(shù)據(jù),再用以下命令分別將矩陣data的第一、二、三行的數(shù)據(jù)賦給變量t、x、y:

t=data(1,:)x=data(2,:)y=data(3,:)若要調用矩陣data的第j列的數(shù)據(jù),可用命令:

data(:,j)方法2data=[78798081828384858687;23.8,27.6,31.6,32.4,33.7,34.9,43.2,52.8,63.8,73.4;41.4,51.8,61.7,67.9,68.7,77.5,95.9,137.4,155.0,175.0];savedata1data;1/11/2023二、基本統(tǒng)計量對隨機變量x,計算其基本統(tǒng)計量的命令如下:均值:

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論