a = [1, 0, 0]; b = [0, 1, 0]; dot(a, b) % → 0(互相垂直) cross(a, b) % → [0, 0, 1](z 軸方向)
7. 繪圖函式
基本繪圖:
函式
說明
plot(x, y)
二維折線圖
plot(x, y, 'style')
帶樣式的折線圖(如 'r--o')
fplot('func')
繪製函數圖形(較精確)
ezplot('func')
簡易函數圖形(舊版,建議改用 fplot)
scatter(x, y)
散點圖
bar(x, y)
長條圖
histogram(x)
直方圖
stem(x, y)
莖葉圖(離散訊號)
三維繪圖:
函式
說明
plot3(x, y, z)
三維折線圖
surf(X, Y, Z)
三維曲面圖
mesh(X, Y, Z)
三維網格圖
contour(Z)
等高線圖
圖形控制:
1 2 3 4 5 6 7 8 9 10 11 12
grid on % 開啟格線 grid off % 關閉格線 grid minor % 細緻格線 hold on % 保持當前圖形(疊加繪圖) hold off % 取消保持 xlabel('text') % x 軸標籤 ylabel('text') % y 軸標籤 title('text') % 圖形標題 legend('A','B') % 圖例 axis([xmin xmax ymin ymax]) % 設定軸範圍 figure% 開新圖形視窗 subplot(m, n, p) % 子圖排列
8. 運算子
8.1 關係運算子
運算子
說明
運算子
說明
<
小於
>
大於
<=
小於或等於
>=
大於或等於
==
等於
~=
不等於
⚠️ 注意:MATLAB 使用 ~= 表示不等於,不是!=
8.2 邏輯運算子
運算子
函式
說明
&
and(a,b)
逐元素 AND
|
or(a,b)
逐元素 OR
~
not(a)
邏輯 NOT
&&
—
短路 AND(用於純量,if/while 常用)
||
—
短路 OR(用於純量,if/while 常用)
xor(a,b)
—
互斥 OR
8.3 檢查用函式
函式
說明
all(x)
所有元素非零則回傳 1(True)
any(x)
有任一元素非零則回傳 1
find(x)
非零元素的索引位置
isfinite(x)
元素是否為有限值
isinf(x)
元素是否為無限值
isnan(x)
元素是否為 NaN
isnumeric(x)
是否為數值型別
isempty(x)
是否為空陣列
isstr(x) / ischar(x)
是否為字串
islogical(x)
是否為邏輯型別
isinteger(x)
是否為整數型別
9. 控制流程
for 迴圈
1 2 3 4 5 6 7 8 9 10 11 12 13 14
% 基本用法 fori = 1:10 disp(i); end
% 自訂步長 for x = 0 : 0.5 : 2 disp(x); end
% 迭代陣列 for col = A % A 的每一行(column) disp(col); end
while 迴圈
1 2 3 4 5
x = 1; while x < 100 x = x * 2; end disp(x);
if / elseif / else
1 2 3 4 5 6 7 8 9 10 11
score = 85;
if score >= 90 disp('A'); elseif score >= 80 disp('B'); elseif score >= 70 disp('C'); else disp('F'); end
switch / case
1 2 3 4 5 6 7 8 9 10 11 12 13 14
day = 3;
switch day case1 disp('Monday'); case2 disp('Tuesday'); case3 disp('Wednesday'); case {6, 7} % 多值可用 cell array disp('Weekend'); otherwise disp('Unknown'); end