matlab基礎(chǔ)筆記合集
(1)1.左上可以新建實(shí)時(shí)編輯器(相當(dāng)于一個(gè)可以查看的文本)
2.變量名需要簡(jiǎn)結(jié)明了
3.變量名需要字母開頭
4.編輯器頁(yè)上有星號(hào)代表沒保存。舉一反三除了這個(gè)軟件,其他文本都是有星號(hào)代表尚未保存
5.輸入“clc”清除command Windows(命令行窗口)的所有命令
6.輸入“clear”是清除workspace(工作區(qū))中的所有變量
7.變量名區(qū)分大小寫
8.變量名長(zhǎng)度不能超過63位,不然會(huì)被截?cái)?,反正就是有字?jǐn)?shù)限制的意思
9.“%”后面的是注釋
10.一個(gè)空格算一個(gè)字符
11.abs(x)是取絕對(duì)值的函數(shù)
12.A=[1 2 3; 4 5 6; 7 8 9]表示一個(gè)矩陣
13.B=A'? 表示矩陣的轉(zhuǎn)置? (行變列,列變行)
14.C=A(:) 按列往下放置
(2)1.rand:生成均勻分布的偽隨機(jī)數(shù)。分布在(0,1)之間
2.rand語(yǔ)法一:rand(m,n)生成指定精度的均勻分布的偽隨機(jī)數(shù),參數(shù)還可以是'single'
3.rand語(yǔ)法二:rand(RandStream,m,n)利用指定的RandStream(隨機(jī)種子)生成偽隨機(jī)數(shù)
4.randn生成標(biāo)準(zhǔn)的正態(tài)分布的偽隨機(jī)數(shù)(均值為0,方差為1)(語(yǔ)法和rand一樣)
5.randi:生成均勻分布的偽隨機(jī)整數(shù)
6.randi語(yǔ)法一:randi(iMax)在開區(qū)間(0,iMax)生成均勻分布的偽隨機(jī)整數(shù)
7.randi語(yǔ)法二:randi(iMax,m,n)在開區(qū)間(0,iMax)生成mXn型隨機(jī)矩陣
8randi語(yǔ)法三:r=randi ([iMin,iMax],m,n)在開區(qū)間(iMin,iMax)生成的mXn型隨機(jī)矩陣
9.元胞數(shù)組是matlab特有的一種數(shù)據(jù)類型,可以逐漸追蹤一直到所有的變量全部翻譯成基本信息。元胞數(shù)組的class函數(shù)輸出就是cell。
10.magic在matlab中用來(lái)生成n階幻方。magic(n)生成n*n階的矩陣,使每行、每列,以及主、副對(duì)角線上面的n個(gè)數(shù)之和都相等(這個(gè)和等于n*(n^2+1)/2)
11.前面先令A(yù)=一個(gè)元胞數(shù)組之后的A{n}代表在按列從上往下數(shù)第n項(xiàng)為設(shè)計(jì)的程序
12.輸入錯(cuò)誤可以按 向上箭頭鍵 繼續(xù)輸入內(nèi)容
(3)1.結(jié)構(gòu)體:books=struct('name',{{'Machine Learning','Date Mining'}},'price',[30 40])
? ? ? ? ?struct后面的稱為結(jié)構(gòu)體,我們把它賦予books
2.books.name相當(dāng)于在books當(dāng)中選擇name這個(gè)屬性
3.books.name(n)表示選擇name屬性的第n項(xiàng)? 結(jié)果是個(gè)元胞數(shù)組
4.books.name{n}表示選擇name屬性的第n項(xiàng)? 結(jié)果是個(gè)值(字符串)
5.A=[1 2 3 4 5 6 7 8 9 ; 9 8 7 6 5 4 3 2 1]表示一個(gè)矩陣? ?分號(hào)屬于隔行 數(shù)量跟第一排一樣因?yàn)槭蔷仃嚶铮ㄗ⒁廨斎霑r(shí)符號(hào)的中英文)
6.B=1:2:9? ?前后的“1”、“9”表示取值范圍,中間的“2”表示差值
7.C=repmat(B, 3, 2)? "3"代表重復(fù)三行、“2”代表重復(fù)2列? 注意書寫時(shí)逗號(hào)之后要空格
8.D=ones(2, 4)表示生成兩行四列的元素為1的矩陣
9.輸入“clear”是清除workspace(工作區(qū))中的所有變量
10.設(shè)A=[1 2 3; 4 5 6]? ?B=[1 1 1; 2 2 2]
? ? C=A+B? 對(duì)應(yīng)相加? D=A-B對(duì)應(yīng)相減
11.E=A*B' (A乘B的轉(zhuǎn)置)(需要第一個(gè)矩陣的列數(shù)和第二個(gè)矩陣的行數(shù)相同才能相乘)
12.G=A/B 相當(dāng)于A乘B的逆矩陣(矩陣?yán)锩鏇]有直接表示除的但是意思上時(shí)乘逆矩陣)? 設(shè)H=B' 那么H就是B的逆矩陣了
13.J=A.*B意思是每一項(xiàng)對(duì)應(yīng)相乘
(4)1.在語(yǔ)言中”:“是取全部的意思
2. 令A(yù)=magic(5)?
?B=A(2, 3)指在A當(dāng)中第二行第三列的值
C=A(3, :)指的是第三行的全部列。同理,D=A(:, 4)指的是第四列的全部行
3.在Matlab中find函數(shù)表示查找,它可以按條件返回向量或矩陣中的滿足條件元素的位置
[m, n]=find(A>20)? 指的是大于20的數(shù)的行和列是什么
4.matlab的邏輯與流程控制?
if ... else ... end :? ?if ... end 是只有一個(gè)判斷語(yǔ)句,當(dāng)條件表達(dá)式為真的時(shí)候,就執(zhí)行語(yǔ)句體;
如果條件表達(dá)式為假,就跳出條件體,執(zhí)行end后面的語(yǔ)句
例子:
a = 100;
b = 20;
if a > b?
disp('成立')
end
所以 if ...(語(yǔ)句體1) else ...(語(yǔ)句體2) end 的意思是如果表達(dá)式為真,則系統(tǒng)將執(zhí)行語(yǔ)句體1;如果表達(dá)式為假,則執(zhí)行語(yǔ)句體2
例子:
a = 100;
b = 20;
if a > b
disp('成立')
else
disp('不成立')
end
5.for ... end? ?指按給定的范圍或者給定的循環(huán)次數(shù)重復(fù)完成一次或者多次運(yùn)算。從for開始到end結(jié)束
基礎(chǔ)格式:for? 循環(huán)變量=初值:步長(zhǎng):終值? ? (步長(zhǎng)可以省略,默認(rèn)為1)
? ? ? ? ? ? ? ? ? ? ? ?執(zhí)行語(yǔ)句1
? ? ? ? ? ? ? ? ? ? ? ?...
? ? ? ? ? ? ? ? ? ? ? ?執(zhí)行語(yǔ)句n
? ? ? ? ? ? ? ? end
例子:求1^2+2^2+3^2+4^2+5^2的值
? ? ? ? sum = 0;
? ? ? ? for n = 1: 5
? ? ? ? sum = sum + n^2;
? ? ? ? end
6.while ... end? ?執(zhí)行方式為:若條件表達(dá)式中的條件成立,則執(zhí)行循環(huán)語(yǔ)句體;若不成立,則執(zhí)行end后面的語(yǔ)句
例子:求1~100的奇數(shù)和
程序設(shè)計(jì)為:
x = 1;
sum = 0;
while x < 101
sum = sum + x;?
x= x + 2;
end
7.switch ... case ... end
意思是通過與某個(gè)表達(dá)式的值進(jìn)行比較,根據(jù)比較結(jié)果來(lái)做不同的選擇,以實(shí)現(xiàn)程序的分支功能
結(jié)構(gòu)格式為:
switch 表達(dá)式(數(shù)值或者字符串)
? ? ? ? ?case 數(shù)值或者字符串1
? ? ? ? ? ? ? ? ?語(yǔ)句體1;
? ? ? ? ?case 數(shù)值或者字符串2
? ? ? ? ? ? ? ? ?語(yǔ)句體2;
? ? ? ? ?...
? ? ? ? ?otherwise
? ? ? ? ? ? ? ? ?語(yǔ)句體n;
end
(otherwise 是? ?否則;其他情況下? ?的意思)
(5)二維平面繪圖:令x=0:0.01:2*pi? ?y=sin(x)
1.在matlab中Π寫作pi
2.figure:建立一個(gè)幕布
3.plot(x,y)指繪制一個(gè)關(guān)于x和y的二維平面圖
4.title('y=sin(x)')? 編輯一個(gè)標(biāo)題為y=sin(x)
5.xlabel(’x‘)指橫坐標(biāo)為x
6.ylabel(’sin(x)‘)指縱坐標(biāo)為sin(x)
7.xlim(0 2*pi)可以使圖像右邊無(wú)縫隙
8.繪制的圖像線條顏色符號(hào):紅r? 綠g? 藍(lán)b? 黃y? 粉紅m? 青c? 白w? 黑k
? ? ? ? ? ? ? ? ? ?線條線型符號(hào):實(shí)線 -? 虛線 --? 冒號(hào)線 :? 點(diǎn)畫線 -.??
9.plotyy? 指的是共用一個(gè)x的坐標(biāo)系
(6)1.二維繪圖用plot,三維繪圖用plot3
2.令t=0:pi/50:10*pi;
plot3(sin(t),cos(t),t)
(設(shè)標(biāo)簽:)xlabel('sin(t)')
ylabel('cos(t)')
zlabel('t')
grid on(加入網(wǎng)格線)??
(hold on:同一個(gè)幕布當(dāng)中繪制多條線? ?;? 不再多繪制線了,圖已經(jīng)生成結(jié)束了就是hold off)
axis square(讓圖像變?yōu)檎叫危?/p>
(7).圖形的保存與輸出
1.在幕布(圖像)中的編輯選項(xiàng)中點(diǎn)擊復(fù)制圖形,就可以在word或者其他軟件中直接粘貼了
2.在幕布(圖像)中的文件選項(xiàng)中點(diǎn)擊另存為,可以更改格式的保存
3.在導(dǎo)出設(shè)置的大小屬性中設(shè)置寬度和高度可以在word的倆欄或者多欄中圖像依然保持清晰(合適值為200等、厘米改為磅)