当前位置:文档之家› matlab常用基础命令

matlab常用基础命令

clc 清理命令窗口历史内容
clear 清除所有内存存储的变量值
clf 清除图形
whos 显示各变量信息
sqrt 开方
edit 开编辑窗口
linspace(a,b,N) 定义等差数列,a初值,b末值,N步数(即数据个数)
logspace(a,b,N) 定义等比数列,初值10^a,末值10^b,N步数(即数据个数)
A.*B 矩阵点乘,对应项相乘
A./B 矩阵点除
A.^B 矩阵点方(指数相同也要用点方)
A=[a:n:b] 定义以a为开始,步长为n的等差数列,最后一个数不超过b(n省略代表步长为1)
A' 矩阵转置
A=[B,C;D] 矩阵拼凑
e *10^
exp e^
format long 后续数据显示小数点后15位
format short 后续数据显示小数点后4位
format bank 后续数据显示小数点后2位(不适用于复数)
format long/short e 后续数据科学技术法显示,并且小数点后15位/4位
format long/short eng 后续数据类似科学技术法显示,但指数保持为3的整数倍,并且有效位数(15位+1/4位+1)
format + 矩阵中各元素只显示正负,零为空格
format rat 以分数形式显示有理数
format long/short g Matlab自定最优显示
load/save +文件名 载入/储存工作区数据
rem(a,b) a/b的余数
size(A) A矩阵的大小[行数 列数]
ylim([0,1])
help 打开帮助界面
help+帮助界面中对应标题 查看对应函数的使用
nthroot(x,n) x的n次实数根
sign(x) x大于零输出1;x等于零输出0;x小于零输出-1
log10(x) lg(x)
log(x) ln(x)【注:logb(a)=ln(a)/ln(b)】
fix(x) 取整
round(x) 对x四舍五入
floor(x) 对x向负取整
ceil(x) 对x向正取整
factor(x) 对x因式分解
gcd(a,b) 求a,b最大公约数
lcm(a,b) 求a,b最小公倍数
rats(x) 用分数表示x
factorial(x) x!
nchoosek(n,k) 组合数n选k
primes(x) 找出小于x的素数
isprime(x) x是素数,返回1
sin(),cos(),tan()... 自变量为弧度
asin(),acos(),atan()... 结果为弧度
max(x),min(x) x适量中的最大、最小值
[a,b]=max(A) A为一行时,a为最大值,b为最大值单行位置
A为m行n列时,a为m行向量,对应各列最大值,b为m行向量,对应各列最大值在该列位置
多个最大值时,位置默认第一个

max(A,B) A、B同大,结果为A,B中对应位置最大值的汇总矩阵
mean()/median()/mode() 求平均值/中位数/众数(众数选最小值)
cumsum/cumprod(A) 求A的累加/累乘结果,生成与A同大小矩阵,(列运算)单矩阵运算
sum/prod(A) A矩阵列求和/求积或求行向量和/积
sort(A)/sort(A,'descend') 将A升序/降序排列(行向量自身升序/降序,矩阵列升序/降序)
sortrows(A,n) 按第n列排列各行,n正升序,n负降序,n省略第一列升序
size(x)/[a,b]=size(x) 返回[行数,列数]/给a、b赋值
length(A) 矩阵A的最大长度(行数和列数的最大

值)
std(A) 求A的标准差(行向量自身求解,矩阵列求解)
var(A) 求A的方差(行向量自身求解,矩阵列求解)
rand/randn(m,n) 生成(0,1)m×n随机数矩阵/生成均值为0,标准差为1的高斯随机数矩阵(正态分布)
【通过randn(m,n)*std+mean可得到均值为mean,标准差为std的正态分布随机数矩阵】
A+B*i(complex(A,B)) 生成复数或复数矩阵
real(A)/imag(A) 求实部/虚部
isreal(A) 实数返回1
coni(A) 求共轭【或用A'也可,但会发生行列互换】
x为复数时
abs(x)/angle(x) 求复数的模,与水平方向的夹角
realmax/realmin 返回MATLAB能够使用的最大/最小浮点数
intmax/intmin 返回MATLAB能够使用的最大/最小整数
pi/i/j 圆周率/虚数/虚数
clock 当前时间(一般使用fix(clock)增加可读性)
date 返回日期,以字符串形式
eps 返回MATLAB最小间隔

矩阵
A(n,:)/(:,m)【A(n,end)/(end,m)】A矩阵的第n行【最后一列】/第m列【最后一行】
[A,B]=meshgrid(a,b),A.*B a,b为行向量,运行结果得a*b的m*n维矩阵【meshgrid(x)等价于meshgrid(x,x)】
zeros(m)/(m,n) m*m/m*n全零矩阵
ones(m)/(m,n) m*m/m*n全一矩阵
diag(A) 取对角元素为列向量
diag(x) 若x为行向量或列向量,结果为对角阵其他元素为零
diag(A,n/-n) 对角线右上/左下第n斜线上的元素
fliplr(A)/flipud(A) A矩阵列/行进行对称翻转
magic(m) 创建m*m维魔方矩阵


作图
xlabel/ylabel('') 添加x/y轴坐标
title('') 添加表头
grid 使图像出现网格
figure(x) 创建或打开figure x窗口,之后作图均在该窗口进行
hold on 保持图像窗口中之前的图像,进而在此作图不会清除之前图像(hold off取消)
plot(x1,y1,x2,y2) 同时做两个图像
plot(x) x为行向量,则以点数1至n为横轴,x为纵轴作图,按顺序依次连线
plot(A) A为m*n矩阵,则图像为那条曲线,每条曲线横轴均为1至m,纵轴为相应列对应值
plot(x,A) 以x为横轴,A的每一列为纵轴作图(x与A同维)
plot(A,B) A与B需同维,对应列分别作为横轴和纵轴作图
plot('标识符') 线型: -实线 :点 -.点画线 --虚线
点型: .点 o圆圈 xx形状 +加号 *星号 s方形 d菱形 v下三角 ^上三角 <左三角 >右三角 p五角星 h六角星 颜色: b蓝色 g绿色 r红色 c青色 m洋红色 y黄色 k黑色 w白色
【注】,多重输出可多重设定
axis([a,b,c,d]) 限制图像x轴在[a,b], y轴在[c,d]
legend('string1','string2',etc) 按照作图顺序添加图注
text(x,y,'string') 在(x,y)处添加文本‘string’
gtext('string') 添加文本‘string’,位置由鼠标点击确定
【注】(适用于string形式)输入希腊字母需要'\'+希腊字母读法;^ 可出现上标,_ 可出现下标
若想输出_或^,可用\+相应符号
subplo

t(m,n,k) 将图形窗口划分成m行n列,所有的绘图操作都在一行一行数的第k个子图中进行
【注】clf针对消除一个figure窗口内的内容,而plot等一系列操作针对一个子图中,且hold on/off被限于特定一个子图中,不影响其他子图
polar(x,y) 绘制极图
semilogx/semilogy(x,y) x轴对数,y轴线性/x轴线性,y轴对数作图
loglog(x,y) 双对数坐标作图
bar(x)/barh(x) x为矢量时,按x绘制垂直/水平条形图
x为矩阵时,按各行分组绘制垂直/水平条形图
bar3(x)/bar3h(x) 同上,绘制三维条形图
pie(x)/pie3(x) 绘制(三维)饼状图。【注】按列依次分饼逆时针排列
hist(x) 绘制柱形图,默认将数据最大值最小值均分十份,纵轴为各范围内数据点的数目
x为矩阵时,按一列为一组绘制柱状图
plotyy(x,y1,x,y2) x轴统一,y轴分别根据y1和y2的数据范围选取合适的尺度。
【注】可在y2后添加‘semilogy’‘semilogx’‘loglog’改变各轴形式
右侧y轴坐标可通过"Edit Plot"按钮由左侧拖至右侧,但程序重新执行时内容会消失
fplot('f(x)',[a,b]) 绘制函数f(x)在[a,b]范围内的图像

plot3(x,y,z) 绘制三维图像
mesh(A) A为m*n矩阵,则空间按每行作出m条曲线,直线依次连接每列个点,(x,y)分别对应A 中位置
mesh(x,y,A) x,y都是行向量,与A同宽,可实现将(x,y)表示A中位置修改为给定的坐标
surf(A) 类似mesh(A)只是将曲面着色
shading interp/flat 将曲面图渲染成递变效果/平面效果
colormap() 可调节图像色系,如下
colormap(gray)
colormap(autumn)
colormap(spring)
colormap(winter)
colormap(summer)
colormap(jet)
colormap(flag)
colormap(copper)
colormap(cool)
colormap(colorcube)
colormap(bone)
colormap(hot)
colormap(hsv)
colormap(pink)
colormap(prism)
colormap(white)
colormap(jet)
contour(x,y,A) 绘制等高线
pcolor(x,y,A) 以颜色表示高度
surfc(x,y,A) 同时绘制等高线和曲面图
comet(x,y) 演示动态效果,y随x变化【comet3()绘制三维动态】



函数
global a 定义全局变量
function [x,y]=f(z) 定义多输出函数


输入输出
z=input('描述语') 可输入数值、矩阵、字符串(需用‘’将字符串包围)
z=input('描述语','s') 输入内容作为字符串

存储
disp('strings')or disp(A) 显示字符或矩阵
A=['strings' num2str(x)] 将x的值与字符串连接在一起,作为一行输出
pause() 暂停直至按下任意键
pause(x) 暂停x秒
fprintf('string1 %z string2',x) 按%z规定的格式,在字符串%z的位置输出变量x
【注】%f定点格式、%e指数形式、%d十进制格式(整数显示整数部分,小数以指数形式显示)、%g以%f或%e中最紧 凑形式显示、%c字符显示(一个字符显示一行)、%s字符串显示()
function out()
x=10.01;
fprintf('(1)%f is the value of x\n',x)
fprintf('(2)%e is the value of x\n',x);
fprintf('(3)%d is the value of x\n',x);
fprintf('(4)%g is the value of x\n',x);
y='abc';
fprintf('(5)%c is the value of y\n',y);
fprintf('(6)%s is the value of y\n',y);
\n \r \t \b 格式命令:换行 回车 制表 退格


inline

for n=1:x
循环语句
end


A=magic(4)
B=A(:) 将A变成列向量


数值分析
det(A) A的行列式值
norm(A,2) A的2-范数
eig(A) A的特征值

今天用MATLAB作图,碰到一个问题:想把结果保存成为图片,结果,失望,保存之后打开一片黑色。之后再试了几下,不论是jpg,bmp还是png都不行,并且显示如下错误提示:

Warning: Problems in UIW_SetUpGLPrinting

只好Google,最后,总算找到答案,原来是着色属性的问题,修改其实很简单:

set(gcf, 'Renderer', 'ZBuffer')

这样,就把属性从OpenGL改到了ZBuffer,这样,就可以了。



















相关主题
文本预览
相关文档 最新文档