matlab 画图基本介绍
1.在命令窗口输入命令时,可以不必每输入一条命令就按enter键执行,可以在输入几行后一同运行。方法是:换行时,只要在按住<shift>键的同时按<enter>键即可,否则matlab就会执行上面输入的所有语句。
2.如何将数据文件导入matlab中并画图:点击file中import data,然后就可以导入文件,然后再workspace里面,点击该数据文件,就可以出现以下图形:
选择该两列,就可以看到在上面有一个scatter然后点击,就可以出现以下图形:
3.分号“;”的作用:用做矩阵(数组)的行间分隔符,用做不显示计算结果的命令。
4.稀疏矩阵
定义:矩阵大部分元素是0,少部分元素是非零元素,这种矩阵是稀疏矩阵。
S=sparse(A);
full(S);
nnz(S);
spy(S);
spy(s,,‘*’,16) 表示用’*’号显示,大小为16。如图:
5.注意矩阵的乘法A*B和A.*B的区别:A*B就是A与B的直接相乘,如果是A.*B就是A与B中的对应项相乘。 “./”也是一样的,就是对应项相除。
6.奇异矩阵就是方阵并且行列式为0的矩阵。
7.二维图像绘制
(1)基本函数绘制 plot 既可以绘制实线,也可以绘制点线。
<1> plot(X,Y) %X,Y为同维向量时,绘制以X、Y元素为横,纵坐标的一条线;X为列向量,Y为矩阵时,按Y列绘制多条不同颜色的曲线,X为这些曲线共同的横坐标。
<2> plot(X,Y,LineSpec) %参数LineSpec用于指出线条的类型,标记符号和颜色。
<3> plot(X1,Y1,LineSpec1,X2,Y2,LineSpec2...) %当Xi和Yi成对出现时,将分别按顺序取两数据Xi和Yi进行画图。
<4> plot(..., ‘PropertyName’,PropertyValue,...)%对图形对象中指定的属性进行设置。
For example:
x=0:0.1:2;
y=1+exp(x);
Plot(x,y, ‘-+b’)
其中,‘-’表示实线,‘+’表示点类型,b表示蓝色。
t=[-pi:pi/100:2*pi]’;k=1:6; y=sin(t)*k;
Plot(t,y) %y是矩阵形式
(2)图形标注
<1> 坐标轴名
格式:xlabel(‘string’)
Ylabel(‘string’)
分别给x轴和y轴添加标签
<2> 图名
格式:title(‘string’) 在当前坐标轴上方正中央放置字符串string做为标题。
<3> 图例
格式:legend(‘string1’,’string2’,...)
用指定文字给当前坐标轴添加图例。
For example:
t=0:pi/100:pi;
y1=sin(t);y2=sin(-t);
y3=sin(t).*sin(5*t);
plot(t,y1, ‘-.r’,t,y2, ‘-.k’,t,y3, ‘-bo’)
xlabel(‘时间’);ylabel(‘幅度’);
Title(‘波形及包络线’);
Legend(‘y=sint’, ‘y=-sint’, ‘y=sinsin5t’)
上面的图形标注都是使用标注函数直接写在程序中的,当执行程序后,图形中会自动添加图形标注。但是我们也可以根据图形菜单进行标注,打开图形窗口(Figure)菜单栏中的insert菜单,这时候就可以在图像上添加标注。
(3)图像控制命令
<1>clf %清除所有当前图像窗口
(4)迭加绘图
<1>hold on %保留当前图像与当前坐标轴的属性值,使用后面的图形命令只能在当前存在的坐标轴中增加图形。
<2>hold off %在绘制新图形之前,重新设置坐标轴的属性为默认值,关闭hold on功能。
<3>hold %在on和off之间切换,即在增加图形和覆盖图形之间切换。
<4>hold all %保留当前颜色和线型,在绘制随后的图形时使用当前颜色和线型。
For example:
x=linspace(0,2*pi,60);y=sin(x);
plot(x,y,’b’);
xlabel(‘自变量’),ylabel(‘因变量’);
Hold on;
z=0.5*sin(x);
plot(x,z,’k:’);
legend(‘y=sin(x)’,’z=0.5*sin(x)’);
hold off
(5)多子图
在同一图形框内布置几幅独立的子图。
格式:subplot(m,n,k) %将一个图形窗口分成m*n个小窗口(子图),k是子图的编号。序号原则是:左上方的为第一幅,然后向右、向下依次排好。
subplot(‘Position’,[left bottom width height]) %在由4个元素指定的位置上创建坐标轴。
x=-4:0.1:4;
subplot(2,2,1);
y1=1/sqrt(2*pi)*exp(-1/2*x.^2),plot(x,y1);
xlabel('变量x'),ylabel('变量密度y'),title('正太分布N(0,1)');
subplot(2,2,2);
y2=1/sqrt(2*pi)/2*exp(-1/2/4*x.^2),plot(x,y2);
xlabel('变量x'),ylabel('概率密度y')
title('正太分布N(0,4)');
subplot(2,2,3);
y3=1/sqrt(2*pi)/0.5*exp(-1/2/(0.5^2)*(x-1).^2),plot(x,y3);
xlabel('变量x'),ylabel('概率密度y'),title('正太分布N(1,1/4)');
subplot(2,2,4);
y4=1/sqrt(2*pi)/0.5*exp(-1/2/(0.5^2)*(x+1).^2),plot(x,y4)
xlabel('变量x'),ylabel('概率密度y'),title('正太分布N(-1,1/4)')
(6)多个图形窗口
格式: Figure(n) %创建新的图形窗口或显示当前图形窗口。n是这个窗口的编号,figure(1)是默认值,不需要声明。
>> t=-4:0.1:4;x=sin(t);plot(t,x,'b^')
>> t=-4:0.1:4;x=sin(t);plot(t,x,'b^')
>> xlabel('t');ylabel('x');title('函数x=sint的图形');
>> figure(2)
>> y=cos(t);plot(t,y,'kp');
>> xlabel('t');ylabel('y');title('函数y=cost的图形');
>> figure(3)
>> z=sin(t).*cos(t);plot(t,z,'kh')
>> xlabel('t');ylabel('z');title('函数z=sincost的图形')
(7)对数比例坐标轴
loglog(x,y) %双对数坐标,在x轴,y轴按对数比例绘制二维图形。
Semilogx %半对数坐标,在x轴按对数比例,y轴按线型比例绘制二维图形。
Semilogy %半对数坐标,在y轴按对数比例,x轴按线型比例绘制二维图形。
x=linspace(0,5,20);y=exp(x);
>> subplot(2,2,1),plot(x,y),xlabel('x'),ylabel('y');
>> subplot(2,2,2),loglog(x,y),xlabel('logx'),ylabel('logy');
>> subplot(2,2,3),semilogx(x,y),xlabel('logx'),ylabel('y');
>> subplot(2,2,4),semilogy(x,y),xlabel('x'),ylabel('logy');
>>
(8)双纵坐标图
格式:plotyy(x1,y1,x2,y2) %绘制双纵坐标二维图形,x1和y1所对应的图形的纵坐标标注在图形的左边,x2和y2所对应图形的纵坐标标注在图形的右边。
>> x=0:0.1:4;y=x.*sin(x);s=sin(x)-x.*cos(x);
>> plotyy(x,y,x,s);
>> text(0.5,0,'\fontsize{14}\ity=xsinx')
>>text(2.5,3.5,['\fontsize{14}\its=','{\fontsize{16} \int_{\fontsize{8}0}^{ x}}','\fontsize{14}\itxsinxdx'])
(9) 泛函绘图
泛函函数fplot(‘function’,limits,LineSpec)
fplot(‘function’,limits,LineSpec,tol)
说明:
(1)在指定的范围limits内绘制出函数名为function的一元函数图像,其中limits是一个指定x轴的向量[xmin xmax],或者是x轴和y轴的范围向量[xmin xmax ymin ymax]。Tol为相对允许误差,默认值为2e-3.
(2)函数function必须是M函数文件或者只包含一个变量x的函数字符串。
(3)用指定的线型LineSpec绘制出函数function.
For example:
fplot('exp(2*x)',[0 2],'o')
图像为:
fplot(‘[sin(x),cos(x)]’,[0 2*pi-1.2 1.2],’-*’,1e-3)
(10) 简易函数绘图
格式:ezplot(f) %对于显函数f=f(x),在-pi<=x<=pi(默认)上绘制f(x)的图形;对于隐函数f=f(x,y),在[-2pi<=x<=2pi,-2pi<=y<=2pi](默认)上绘制函数f(x,y)的图形。
ezplot(f,[min,max]) %在指定的范围min<=x<=max绘制函数f=f(x)的图形。
ezplot(f,[xmin,xmax],fign) %在指定标号fign的窗口中,指定的范围。[xmin,xmax]内绘制函数f=f(x)的图形。
ezplot(f,[xmin,xmax,ymin,ymax]) %在[xmin<=x<=xmax, ymin<=y<=ymax]绘制f(x,y)=0的图形。
11.matlab 的注释
点击ctrl+R,注释程序;可多次点击,多次注释同一次选中的代码;
点击ctrl+T,取消注释程序。
12.3维图形的绘制
(1)meshgrid
Meshgrid是将向量转换成网络坐标的矩阵函数。
格式:[X,Y]=meshgrid(x,y) %生成二元函数z=f(x,y)在XY平面上的矩阵定义域数据点矩阵X和Y
[X,Y,Z]=meshgrid(x,y,z) %生成三元函数u=f(x,y,z)中立方体定义域中的数据点矩阵X,Y,Z.
(2) plot3
%X,Y,Z为同维向量组,分别表示曲线上点集的横坐标,纵坐标,和函数值。
plot3(X,Y,Z,LineSpec) %LineSpec表线性、标记符号、和颜色的字符串。
说明:常用来绘制单变量的参数曲线x=x(t),y=y(t)与z=z(t)的三维函数图形。
(3) mesh 画网格曲面
mesh(X,Y,Z,C) %X,Y为坐标轴取值向量,Z为X,Y平面上的函数值矩阵,C为色彩向量,当C固定时,网格图的色彩随Z的高度而改变。
例如:
x=-3:0.1:3;y=1:0.1:6;
[X,Y]=meshgrid(x,y);
Z=(X+Y).^2;
mesh(X,Y,Z)
(4)表面图 surf
格式:surf(X,Y,Z) %X,Y,Z为同维向量组,分别表示曲线上点集的横坐标、纵坐标和函数值,绘制出数据点(X,Y,Z)表示的曲面。
例如:
t=linspace(0,pi/2,25);p=linspace(0,pi/2,25);
[theta,phi]=meshgrid(t,p);
x=cos(theta).*cos(phi);y=cos(theta).*sin(phi);z=sin(theta);
surf(x,y,z);
(5)set函数
set函数就是给一些图像设置属性的。
1.MATLAB给每种对象的每一个属性规定了一个名字,称为属性名,而属性名的取值成为属性值。例如,LineStyle是曲线对象的一个属性名,它的值决定着线型,取值可以是'-'、':'、'-.'、'--'或'none'。
2.属性的操作
set函数的调用格式为:
set(句柄,属性名1,属性值1,属性名2,属性值2,…)
[fia,theta]=meshgrid([linspace(0,pi/2,5),pi/2])
x=cos(theta).*cos(fia);
y=cos(theta).*sin(fia);
z=sin(theta);
shading interp
% mesh(x,y,z)
set(mesh(x,y,z),'FaceColor','k','EdgeColor','none');
shading interp;
alpha(0.2);
hold on
(6)alpha函数
alpha函数就是控制色彩的浓稠度的,
如:alpha(0.5) 色彩的浓稠度就减少了一半。默认情况下是1.
matlab 画图基本介绍相关推荐
- Matlab画图-非常具体,非常全面
Matlab画图 强大的画图功能是Matlab的特点之中的一个,Matlab提供了一系列的画图函数,用户不须要过多的考虑画图的细节,仅仅须要给出一些基本參数就能得到所需图形,这类函数称为高层画图函数. ...
- matlab画图入门篇--各种基本图形绘制的函数与实例【转载】
MATLAB画图入门篇--各种基本图形绘制的函数与实例 一. 二维图形(Two dimensional plotting) 1. 基本绘图函数(Basic plotting function):Plo ...
- matlab设置图片的比例,Matlab 画图字体,字号的设定,图片大小和比例
[本文主要内容包括: (1) 介绍神经网络基本原理,(2) AForge.NET实现前向神经网络的方法,(3) Matlab实现前向神经网络的方法 .第0节.引例 本文以Fisher的I ...
- matlab系统辨识工具箱原理,matlab常用工具箱介绍
怎么使用matlab系统辨识工具箱 如果是系统自带的,你可以直接用,如果是外部的或者是自编的你需要先把文件夹拷贝到tools文件夹下,再设置路径. Matlab常用工具箱介绍(英汉对照)Matlab ...
- MATLAB画图如何标记特殊点
MATLAB画图如何标记特殊点 在画图的时候利用matlab标记最大值点.最小值点.极值点可能比较烦.但是如果你知道了这个点的坐标,为什么不标记呢?下面就告诉你怎么标记特殊的点. 工具/原料 matl ...
- MATLAB画图中英文不同字体混合显示标题、坐标轴标签(完美解决方案)
MATLAB是吾等理工狗常用的求生工具.在画图时对中英文标题均支持较好,但学术出版物常常对字体有所要求.对于英文出版物一切好说,设置成相应字体即可.而对于中文出版物.中文毕业论文.报告,则常常需要混合 ...
- Matlab画图时的线型、标记以及颜色简记
文章目录 背景 线型 标记 颜色 例说 背景 使用Matlab画图的时候经常由于需要画图,但是总是忘了曲线颜色.线型以及标记,这里在这里记录下,方便查阅. 效果预览: LineSpec -线型,标记和 ...
- MATLAB 画图时插入图例
MATLAB 画图时插入图例 legend('a','b');% 两条曲线,依次为a和b
- matlab caxis 刻度,[求助]MATLAB画图问题,caxis.m的问题
[求助]MATLAB画图问题,caxis.m的问题 近日在用evolutionary spectrum做一个序列的周期分析,碰到如下的问题: ??? Error using ==> set Ba ...
最新文章
- python页面跳转中_python web页面跳转
- linux c++编写访问mysql程序,访问数据库出错,解决方法
- Erlang列表操作里面的变量绑定规则
- 快速解决工作中遇到经典的括号匹配问题
- type pdf c语言课程设计,c语言课程设计-.pdf
- Objective C 总结(十):Conventions
- linux系统 date命令,linux系统 的 date命令
- linux安装gd,linux下 安装GD
- MTK modem编译
- netstat 的10个基本用法
- 数学基础(1)线性代数总结
- Linux/Shell中根据一列信息批量提取文件中匹配的特定行
- 深入浅出了解OCR识别票据原理
- 计算机程序设计c++ 5-1:函数的调用格式
- LC振荡电路设计原理
- bootstrap 5 表单验证
- 从普通程序员到估值上亿的公司老板,他只用了1年!
- jquery在线扫雷
- 康旅江湖,谁在编写琅琊榜
- Java中的main( )函数