MATLAB学习笔记(一):几个常用函数的复习(disp、line、text、figure、plot)

2024-04-29 05:58

本文主要是介绍MATLAB学习笔记(一):几个常用函数的复习(disp、line、text、figure、plot),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

寒暄:终于放寒假了!昨天刚到家,论文先放一边,今天先复习一波MATLAB几个常用函数,更它一篇!

一、 disp() —— 显示文本或数组

1. 语法:
 disp(argument);
//说明:
//如果参量是数组,则显示数组的内容;
//如果参量是字符串,则显示字符串文本的内容。
2. 实例:
2.1 输出数字
>> num = 1;
>> disp(num);输出:
1
2.2 输出字符串
>> disp(this is string’);输出:
this is string
2.3 输出数字和字符串
>> num = 1;
>> disp([‘num:,num2str(num)]);输出:
num:1
2.4 输出数组
>> a=[1 2 3];
>> disp(a);输出:
1 2 3

二、 figure() —— 创建/切换图窗窗口

1. 语法
//语法1:创建一个新的窗口,所有参数采用默认
figure;//语法2:指定窗口ID,n为ID,且需为正整数,否则报错
figure(n);//语法3:可以指定窗口的某些属性
//PropertyName:所选属性名,可选的有toolbar、NumberTitle、position、name、menubar;
//propertyvalue:对应的属性值。
figure('PropertyName',propertyvalue,...);//语法4:返回窗口的句柄,且n为窗口ID
h = figure(n);  

备注:(语法3常用的几类属性如下)

(1)窗口外观

属性名属性值说明
MenuBar‘figure’ (默认)或 ‘none’菜单栏显示方式
ToolBar‘auto’ (默认)或 ‘figure’工具栏显示
DockControls‘on’ (默认)或 ‘off’交互式停靠
ColorRGB 三元组、十六进制颜色代码、颜色名称或短名称背景色
WindowStyle‘normal’ (默认)或 ‘modal’ 或 ‘docked’窗口样式
WindowState‘normal’ (默认)或 ‘minimized’ 或 ‘maximized’ 或 ‘fullscreen’窗口状态

(2)位置

属性名属性值说明
Position四元组,如: [left bottom width height]可绘制区域的位置和大小
Units‘pixels’ (默认) 或 ‘normalized’ 或 ‘inches’ 或 ‘centimeters’ 或 ‘points’ 或 ‘characters’测量单位
InnerPosition四元组,如:[left bottom width height]可会知区域的位置和大小
OuterPosition四元组,如:[left bottom width height]外部边界的位置和大小
Resize‘on’ (默认)或‘off’

(3)绘图

属性名属性值说明
Colormapparula (默认)或 由 RGB 三元组组成的 m×3 数组图窗坐标区内容的颜色图
Alphamap由从 0 到 1 的 64 个值组成的数组 (默认) 或 由从 0 到 1 的有限 alpha 值组成的数组Axes 内容的透明度映射
NextPlot‘add’ (默认)或 ‘new’ 或 ‘replace’ 或 ‘replacechildren’有关如何添加下一绘图的指令
Renderer‘opengl’ (默认)或 ‘painters’渲染器
RendererMode‘auto’ (默认)或 ‘manual’渲染器选择
GraphicsSmoothing‘on’ (默认)或 ‘off’坐标区图形平滑处理

*Figure详细属性可在官网文档查看,下方给出超链接。

点击跳转至《MathWork文档:Figure属性》

2. 实例
2.1 默认创建新窗口
>> figure;
2.2 指定窗口ID
>> figure(2);
2.3 指定窗口某些属性
//指定窗口的标题
>> figure('name','窗口1');
//其中属性值为一个四元数组 rect = [left, bottom, width, height];
//第一、二个参数表示窗口位置,都是从屏幕的左下角计算的。
>> figure('position',[600, 300, 300, 200]);
//指定窗口的标题和窗口的背景颜色
>> figure('Name','窗口1','color','b');
//将f1窗口的背景色属性设置为蓝色
>> f1 = figure(1); 
>> set(f1,'Color','r'); 
//关闭默认显示窗口标题
>> figure('NumberTitle','off');    
//不显示工具栏、菜单栏
>> figure('toolbar','none','menubar','none');  

三、 plot() —— 绘制二维图像

1. 语法
plot(Y);
//如果Y是m×n的数组,以1:m为X横坐标,Y中的每一列元素为Y坐标,绘制n条曲线;
//如果Y是n×1或者1×n的向量,则以1:n为横坐标,Y为坐标表绘制1条曲线;
//如果Y是复数,则plot(Y)等效于plot(real(Y),imag(Y));
//其它使用情况下,忽略坐标数据中的虚部。
plot(X,Y,...)
//如果X和Y都是数组,按列取坐标数据绘图,此时它们必须具有相同的尺寸;
//如果X和Y其中一个是向量另一个为数组,X和Y中尺寸相等的方向对应绘制多条曲线;
//如果X和Y其中一个是标量另一个为向量,那么将绘制垂直X或者Y轴离散的点。
plot(x,y,LineSpec,...);
//通过参数LineSpec指定曲线的曲线属性,它包括线型、标记符和颜色
plot(x,y,'PropertyName',ProperValue,...);
//设置由plot创建的所有曲线句柄对象的属性,Line对象属性和属性值参见附录;
//具体设置参考下面的实例,当然可以使用set/get进行设置

备注:(可选的属性如下)

线型说明标记符说明颜色说明
-实线(默认)+加号r红色
双划线o空心圆g绿色
:虚线*星号b蓝色
:.点划线.实心圆c青绿色
x叉号符m洋红色
s正方形y黄色
d菱形k黑色
^上三角形w白色
v下三角形
>右三角形
<左三角形
p五角星
h六边形

下面四个属性设置标识符的颜色和大小:(四个属性是针对当前坐标系中所有曲线的)
(1)LineWidth : 指定线宽
(2)MarkerEdgeColor : 指定标识符的边缘颜色
(3)MarkerFaceColor : 指定标识符填充颜色
(4)MarkerSize : 指定标识符的大小

设置曲线线型、标识符和颜色三项属性时,控制符的顺序不受限制并可以省略或者部分省略。

2. 实例
2.1 创建线图
>> x = 0:pi/100:2*pi;
>> y = sin(x);
>> plot(x,y)

执行结果:

2.2 创建多个线条
>> x = linspace(-2*pi,2*pi);
>> y1 = sin(x);
>> y2 = cos(x);>> figure
>> plot(x,y1,x,y2)

执行结果:

2.3 根据矩阵创建线图
>> Y = magic(4);
>> figure;
>> plot(Y);

执行结果:

2.4 指定线型
>> x = 0:pi/100:2*pi;
>> y1 = sin(x);
>> y2 = sin(x-0.25);
>> y3 = sin(x-0.5);>> figure;
>> plot(x,y1,x,y2,'--',x,y3,':');

执行结果:

2.5 指定线型、颜色和标记
>> x = 0:pi/10:2*pi;
>> y1 = sin(x);
>> y2 = sin(x-0.25);
>> y3 = sin(x-0.5);>> figure;
>> plot(x,y1,'g',x,y2,'b--o',x,y3,'c*');

执行结果:

2.6 在特定的数据点显示标记
>> x = linspace(0,10);
>> y = sin(x);
>> plot(x,y,'-o','MarkerIndices',1:5:length(y));

执行结果:

2.7 指定线宽、标记大小和标记颜色
>> x = -pi:pi/10:pi;
>> y = tan(sin(x)) - sin(tan(x));>> figure
>> plot(x,y,'--gs',...'LineWidth',2,...'MarkerSize',10,...'MarkerEdgeColor','b',...'MarkerFaceColor',[0.5,0.5,0.5])

执行结果:

2.8 添加标题和轴标签
>> x = linspace(0,10,150);
>> y = cos(5*x);>> figure
>> plot(x,y,'Color',[0,0.7,0.9])>> title('2-D Line Plot')
>> xlabel('x')
>> ylabel('cos(5x)')

执行结果:

2.9 绘制持续时间并指定刻度格式
>> t = 0:seconds(30):minutes(3);
>> y = rand(1,7);>> plot(t,y,'DurationTickFormat','mm:ss')

执行结果:

2.10 指定线图的坐标区
>> ax1 = subplot(2,1,1); % top subplot
>> x = linspace(0,3);
>> y1 = sin(5*x);
>> plot(ax1,x,y1)
>> title(ax1,'Top Subplot')
>> ylabel(ax1,'sin(5x)')>> ax2 = subplot(2,1,2); % bottom subplot
>> y2 = sin(15*x);
>> plot(ax2,x,y2)
>>title(ax2,'Bottom Subplot')
>>ylabel(ax2,'sin(15x)')

执行结果:

2.11 创建并修改线条
>> x = linspace(-2*pi,2*pi);
>> y1 = sin(x);
>> y2 = cos(x);
>> p = plot(x,y1,x,y2);>> p(1).LineWidth = 2;
>> p(2).Marker = '*';

执行结果:

2.12 绘制圆形
>> r = 2;
>> xc = 4;
>> yc = 3;>> theta = linspace(0,2*pi);
>> x = r*cos(theta) + xc;
>> y = r*sin(theta) + yc;
>> plot(x,y)
>> axis equal

执行结果:

四、 text() —— 向数据点添加文本说明

1. 语法
text(x,y,txt)
//x,y是位置,txt是说明文字;
//如果说明文字是数字,则这样写:text(x,y,num2str(1));
//设置说明文字颜色,这样写:text(x,y,txt,'color','k')
2.实例
2.1 向数据点添加文本说明
>> x = 0:pi/20:2*pi;
>> y = sin(x);
>> plot(x,y)
>> text(pi,0,'\leftarrow sin(\pi)')

执行结果:

2.2 向多个数据点添加文本

方式一:

>> x = linspace(-5,5);
>> y = x.^3-12*x;
>> plot(x,y)>> xt = [-2 2];
>> yt = [16 -16];
>> str = 'dy/dx = 0';
>> text(xt,yt,str)

方式二:

>> x = linspace(-5,5);
>> y = x.^3-12*x;
>> plot(x,y)>> xt = [-2 2];
>> yt = [16 -16];
>> str = {'local max','local min'};
>> text(xt,yt,str)
2.3 显示多行文本

方式一:

>> plot(1:10)
>> str = {'A simple plot','from 1 to 10'};
>> text(2,7,str)

方式二:

>> plot(1:10)
>> str = {{'A simple plot','from 1 to 10'},'y = x'};
>> text([2 8],[7 7],str)
2.4 指定文本大小和颜色
>> plot(1:10)
>> text(2,8,'A Simple Plot','Color','red','FontSize',14)
2.5 修改现有文本
>> x = linspace(-5,5);
>> y = x.^3-12*x;
>> plot(x,y)
>> t = text([-2 2],[16 -16],'dy/dx = 0')>> t(1).Color = 'red';
>> t(1).FontSize = 14;

五、line() —— 绘制线条

1. 语法
line(X,Y)
//X为横坐标向量,[起点横坐标,终点横坐标];
//Y为纵坐标向量,[起点纵坐标,终点纵坐标]。
line(X,Y,'PropertyName',PropertyValue,...)
2. 实例
2.1 使用向量数据绘制线条
>> line([1,2],[3,4])
2.2 使用矩阵数据绘制多个线条
>> a=[1:4;1:4];
>> b=[zeros(1,4);ones(1,4)*4];
>> line(a,b);
2.3 使用三维坐标绘制线条
>> t = linspace(0,10*pi,200);
>> x = sin(t);
>> y = cos(t);
>> z = t;
>> line(x,y,z)
>> view(3)
2.4 使用低级别语法绘制线条
>> x = linspace(0,10);
>> y = sin(x);
>> line('XData',x,'YData',y)
2.5 指定线条属性
>> x = [1 9];
>> y = [2 12];
>> line(x,y,'Color','red','LineStyle','--')
2.6 创建后更改线条属性
>> x = [3 2];
>> y = [15 12];
>> pl = line(x,y);>> pl.Color = 'green';
>> pl.LineStyle = '--';

这篇关于MATLAB学习笔记(一):几个常用函数的复习(disp、line、text、figure、plot)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/945261

相关文章

51单片机学习记录———定时器

文章目录 前言一、定时器介绍二、STC89C52定时器资源三、定时器框图四、定时器模式五、定时器相关寄存器六、定时器练习 前言 一个学习嵌入式的小白~ 有问题评论区或私信指出~ 提示:以下是本篇文章正文内容,下面案例可供参考 一、定时器介绍 定时器介绍:51单片机的定时器属于单片机的内部资源,其电路的连接和运转均在单片机内部完成。 定时器作用: 1.用于计数系统,可

问题:第一次世界大战的起止时间是 #其他#学习方法#微信

问题:第一次世界大战的起止时间是 A.1913 ~1918 年 B.1913 ~1918 年 C.1914 ~1918 年 D.1914 ~1919 年 参考答案如图所示

[word] word设置上标快捷键 #学习方法#其他#媒体

word设置上标快捷键 办公中,少不了使用word,这个是大家必备的软件,今天给大家分享word设置上标快捷键,希望在办公中能帮到您! 1、添加上标 在录入一些公式,或者是化学产品时,需要添加上标内容,按下快捷键Ctrl+shift++就能将需要的内容设置为上标符号。 word设置上标快捷键的方法就是以上内容了,需要的小伙伴都可以试一试呢!

可视化实训复习篇章

前言: 今天,我们来学习seaborn库可视化,当然,这个建立在Matplotlib的基础上,话不多说,进入今天的正题吧!当然,这个是《python数据分析与应用》书中,大家有需求的可以参考这本书。 知识点: Matplotlib中有两套接口分别是pyplot和pyylab,即绘图时候主要导入的是Matplotlib库下的两个子模块(两个py文件)matplotlib.pyplot和matp

Tolua使用笔记(上)

目录   1.准备工作 2.运行例子 01.HelloWorld:在C#中,创建和销毁Lua虚拟机 和 简单调用。 02.ScriptsFromFile:在C#中,对一个lua文件的执行调用 03.CallLuaFunction:在C#中,对lua函数的操作 04.AccessingLuaVariables:在C#中,对lua变量的操作 05.LuaCoroutine:在Lua中,

AssetBundle学习笔记

AssetBundle是unity自定义的资源格式,通过调用引擎的资源打包接口对资源进行打包成.assetbundle格式的资源包。本文介绍了AssetBundle的生成,使用,加载,卸载以及Unity资源更新的一个基本步骤。 目录 1.定义: 2.AssetBundle的生成: 1)设置AssetBundle包的属性——通过编辑器界面 补充:分组策略 2)调用引擎接口API

Javascript高级程序设计(第四版)--学习记录之变量、内存

原始值与引用值 原始值:简单的数据即基础数据类型,按值访问。 引用值:由多个值构成的对象即复杂数据类型,按引用访问。 动态属性 对于引用值而言,可以随时添加、修改和删除其属性和方法。 let person = new Object();person.name = 'Jason';person.age = 42;console.log(person.name,person.age);//'J

大学湖北中医药大学法医学试题及答案,分享几个实用搜题和学习工具 #微信#学习方法#职场发展

今天分享拥有拍照搜题、文字搜题、语音搜题、多重搜题等搜题模式,可以快速查找问题解析,加深对题目答案的理解。 1.快练题 这是一个网站 找题的网站海量题库,在线搜题,快速刷题~为您提供百万优质题库,直接搜索题库名称,支持多种刷题模式:顺序练习、语音听题、本地搜题、顺序阅读、模拟考试、组卷考试、赶快下载吧! 2.彩虹搜题 这是个老公众号了 支持手写输入,截图搜题,详细步骤,解题必备

《offer来了》第二章学习笔记

1.集合 Java四种集合:List、Queue、Set和Map 1.1.List:可重复 有序的Collection ArrayList: 基于数组实现,增删慢,查询快,线程不安全 Vector: 基于数组实现,增删慢,查询快,线程安全 LinkedList: 基于双向链实现,增删快,查询慢,线程不安全 1.2.Queue:队列 ArrayBlockingQueue:

【操作系统】信号Signal超详解|捕捉函数

🔥博客主页: 我要成为C++领域大神🎥系列专栏:【C++核心编程】 【计算机网络】 【Linux编程】 【操作系统】 ❤️感谢大家点赞👍收藏⭐评论✍️ 本博客致力于知识分享,与更多的人进行学习交流 ​ 如何触发信号 信号是Linux下的经典技术,一般操作系统利用信号杀死违规进程,典型进程干预手段,信号除了杀死进程外也可以挂起进程 kill -l 查看系统支持的信号