octave簡易操作 快速上手
語言以分號;結尾
if for while等語句後用,來承接關系
if ,elseif ,else ,end;
for i=1:10,end;
while a>3 ,end; while true,if ,break;end;end;
常規的=賦值,和==等於
break和continue有效
end做為循環與判斷的結束
數值為主,自定義變量之前不需要聲明數據類型
不等用~= 註釋用%
邏輯 與 && ,或||,異或xor()
字符串定義的時候直接用單引號即可,打印出來的沒有引號
c = (3>=1) 結果是c=1 支持判定賦值
disp(a) 不會打印a=
sprintf(‘%0.2f‘,a)可用
a = [1;2;3]一個列向量
a=[1 2 3]一個行矩陣
a = [1 0;0 1]二維單位向量
2*ones(2,3) 兩行三列2
zeros(3,2)三行兩列0
a = 1:0.1:2 從1到2,0.1為步長,包括1和2。不設置步長默認為1
rand(3,3) 33矩陣隨機
randn(1,3) 13矩陣正態分布隨機
hist(a) 繪制a的直方圖
eye(6) 66單位矩陣
size(A,2)如果A是二維矩陣是看A第二行長度,默認返回矩陣格式如:ans = 5 5
length(A) 返回最外層大小
支持 cd ls (dir)
who 查看當前函數有哪些變量
whos 是更詳盡的查看函數的命令
(查看結果,默認的數字都是double雙精度)
clear a 刪除a函數
save a.mat v 將變量v存成一個叫a.mat的文件,路徑基於默認路徑,也可以切換
save a.txt v -ascii ascii格式存儲
支持切片操作
a([1 3],:) 返回第1 3行的所有列
a = [a,[100;200;300]] a 右邊加一列
a = [a;[100,200]] a 下邊加一行
c = [a b] ab橫向整合
c = [a;b] ab縱向整合
a.*b a.^2 a./v 矩陣元素位運算(乘 平方 除)
log(a) 求對數
exp(a) e的冪次運算
abs(a) 絕對值
-v 直接表示元素的數取反
v+1 表示元素各個位+1
a‘ 轉置矩陣
max(a) a中最大值返回方式是a = [1,4;2,2] max(a)返回2,4
[val,ind] = max(a) 返回val為最大值 ind為最大值的索引
max(a,2.2) a = [1,4;2,2] 返回[2.2000,4;2.2000,2.2000]
max(a,[],1) 每一列最大值 max(a,[],2) 每一行最大值
max(max(A)) 這樣就可以得出整個A
find(a<3) 返回a中小於3的值
a = magic(3) 幻方
[r,c] = find(a >= 7) 返回符合條件的 r位行 c為列
sum(a) 求和如果二維,會所有行累加,類推
prod(a) 最外層乘積,亦二維返回各行.*
ceil(a) 向上取整
floor(a) 向下取整
pinv(a) a的(偽)逆矩陣
a*b 叉乘
畫圖
t = [0:0.01:0.98];
y = sin(2*pi*4*t);
plot(t,y) 返回一個正弦曲線
plot(t,y,‘r‘) r表示顏色:紅
xlabel(‘time‘) 水平軸標簽 ylabel(‘value‘)
legend(‘sin‘,‘cos‘) 圖例
title(‘myplot‘) 標題
print -dpng ‘myplot.png‘ print -djpg ‘myplot.jpg‘保存畫出的圖片
close 關閉圖片
subplot(1,2,1);figure(1);plot(t,y1) 1行2列第一個放圖片plot
clf 清除一幅圖像
imagesc(A),colorbar,colormap gray 連續3個指令 幻方的,色塊的,綠色映射的
例如顏色 線型等 用help plot查詢
quit和exit 退出
自定義函數的格式
function y = squareThisNumber(x)
y = x^2
支持多返回值
[a,b] = SquareAndCubeThisNumber(5)
search path(搜索路徑)
addpath 添加路徑
善用help
disp(i)可以查看長度,但是具體用法有點詭異
octave簡易操作 快速上手