matlab操作方法(二)——基本作图

matlab提供很多灵活的二维作图功能函数。这些作图函数分为3类:图形处理、曲线和曲面图的创建、注释和图形特性。作图函数虽多,但语法大致相同

在 MATLAB 中,figure 函数用于创建或选择图形窗口。

matlab figure函数的用法_matlab中figure-CSDN博客 

MATLAB中figure函数用法 - 知乎 (zhihu.com)

还有另外一个函数subplot()

subplot(m,n,p)

subplot该函数把几个独立生成的图形放在同一个图形窗口中,参数m和参数n分别表示把图形窗口分为行和列的子图数目,参数p指出图形放在第几个子图中。

1.颜色、线性和点型

基本二维作图命令为

plot(X1,Y1,LineSpec1,X2,Y2,LineSpec2...)

其中X1和Y1分别是某点或向量(一系列点)的x轴和y轴坐标

LineSpec是作图线型控制字符串:该字符串可用于确定画线/点的颜色以及画点的类型,还可用于定义线的宽度特征。

 

 

指定绘图中的线和标记的外观 - MATLAB & Simulink - MathWorks 中国 

2.多条曲线作图 

在matlab中至少有3种方式可以在同一张图中做出多条曲线,但是如果新的曲线数据落在原图的坐标区间以外,可能原图的坐标比例会进行重新调整。

(1)最简单的方式是采用

hold on

来保持图中的曲线,该语句保持当前窗口(或subplot子图)为激活状态,但必须使用一组兼容的图形创建函数,所有后续的曲线均会叠加在原图上,直到再次采用

hold off

将保持状态取消

(2)第二种方式是采用plot()函数的多参数作图方式

plot(x1,y1,x2,y2,x3,y3...)

做出矢量对(x1,y1),(x2,y2),(x3,y3)所表示的曲线 

(3)第三种方式是利用

plot(x,y)

其中x和y均为矩阵,或者一个是向量,一个是矩阵 

 (4)也可以采用plotyy()的函数形式在同一张图中作出两条曲线,并且这两条曲线的y轴分别位于图的左边和右边。

例如

x = 0:0.01:20;
y1 = 200*exp(-0.05*x).*sin(x);
y2 = 0.8*exp(-0.5*x).*sin(10*x);
[AX,H1,H2]=plotyy(x,y1,x,y2,'plot');
set(get(AX(1),'Ylabel'),'String','Slow Decay')
set(get(AX(2),'Ylabel'),'String','Fast Decay')
xlabel('Time(\musec)')
set(H1,'LineStyle','--')
set(H2,'LineStyle',':')

 

3.同一窗口中的多个图形绘制

matlab具有在同一图形窗口中绘制多个图形的功能,该功能可通过

subplot(m,n,p)

函数来实现。该函数把图形窗口分成m*n个绘图区,并把当前的作图选择在第p个绘图区,绘图区的次序是先从左到右,再从上到下。

 

4.曲线作图范围设置 

在matlab中作图时,会自动根据曲线数据调整作图区间的坐标轴范围设置。在某些情况下,如果需要对坐标轴显示范围进行设置,则可采取命令

axis([xmin ,xmax, ymin, ymax])

将坐标轴设置成自动调整的状态,可以使用如下的命令:

axis auto
5.对数坐标作图

函数 semilogy(x,y)用于对y轴数据进行log10的对数比例变化作图,但x轴仍使用线性比例坐标。

6.极坐标作图
polar(theta,r) 

 theta为角度值,r为幅度值进行极坐标作图

7.用fplot()和ezplot()对函数作图 

在前面所有的matlab作图示例中,x坐标对应点都是按照等间隔变化的。如果要作图的某些区域变化很快,此时利用plot函数画出的图形就有可能是错误的,而利用fplot()和ezplot()能够自动地对作图时x坐标的取点进行调整,所以做出的图接近实际情况

x=linspace(-4*pi,4*pi,100);
subplot(3,1,1)
plot(x,tan(x))
axis([-inf inf -10 10])
title('plot')
subplot(3,1,2)
fplot(@(x)tan(x),[-4*pi 4*pi])
axis([-inf inf -10 10])
title('fplot')
subplot(3,1,3)
ezplot(@(x)tan(x),[-4*pi 4*pi])
axis([-inf inf -10 10])
title('ezplot')

 

fplot()与ezplot()相比,主要差异在于间断点作图时的连线,fplot()会把作图的间断点连起来 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/190158.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

89基于matlab的人工蜂群和粒子群混合优化的路径规划算法

基于matlab的人工蜂群和粒子群混合优化的路径规划算法,起点和终点确定的前提下,在障碍物中寻找最佳路径。数据可更换自己的,程序已调通,可直接运行。 89人工蜂群和粒子群混合优化 (xiaohongshu.com)https://www.xiaohongshu.com/e…

用JavaScript的管道方法简化代码复杂性

用JavaScript的管道方法简化代码复杂性 在现代 web 开发中,维护干净有效的代码是必不可少的。随着项目的增加,我们功能的复杂性也在增加。然而,javaScript为我们提供了一个强大的工具,可以将这些复杂的函数分解为更小的、可管理的…

【 RTTI 】

RTTI 概念: RTTI(Run Time Type Identification)即通过运行时类型识别,程序能够使用基类的指针或引用来检 查着这些指针或引用所指的对象的实际派生类型。 原因: C是一种静态类 型语言。其数据类型是在编译期就确定的,不能在运…

MySQL的系统信息函数

系统信息函数让你更好的使用MySQL数据库 1、version()函数 查看MySQL系统版本信息号 select version();2、connection_id()函数 查看当前登入用户的连接次数 直接调用CONNECTION_ID()函数--不需任何参数--就可以看到当下连接MySQL服务器的连接次数,不同时间段该…

(数据结构)顺序表的插入删除

#include<stdio.h> #include<stdlib.h> #define MAX 10 typedef struct {int data[MAX];int lenth; }List; //初始化 void CreateList(List* L) {L->lenth 0;for (int i 0; i < MAX; i){L->data[i] 0;} } //插入 int ListInsert(List* L,int i,int e) …

ESP32-Web-Server编程- 实现 Web 登录网页

ESP32-Web-Server编程- 实现 Web 登录网页 概述 是时候实现更加安全的网页了。登录机制是最简单的控制网页访问权限的方法。 需求及功能解析 本节演示如何在 ESP32 上部署一个 Web 服务器&#xff0c;并建立登录页面的机制&#xff0c;用户可以实现登录、登出的功能&#x…

算法题-统计字符个数(Python题解)

文章目录 前言思路code 前言 先前笔试做了一道算法题&#xff0c;题目是这样子的&#xff1a;&#xff08;PS&#xff1a;不用惊讶&#xff0c;是的&#xff0c;我不打算24今年考研了&#xff0c;一是&#xff0c;当初填报的学校不是我想要去的学校&#xff08;当初想一战成硕…

【HuggingFace Transformer库学习笔记】基础组件学习:Tokenizer

基础组件——Tokenizer &#xff08;1&#xff09;模型加载 from transformers import AutoTokenizersen "弱小的我也有大梦想!" # 从HuggingFace加载&#xff0c;输入模型名称&#xff0c;即可加载对于的分词器 tokenizer AutoTokenizer.from_pretrained("m…

华为电视盒子 EC6108V9C 刷机成linux系统

场景&#xff1a; 提示&#xff1a;这里简述项目相关背景&#xff1a; 家里装宽带的时候会自带电视盒子&#xff0c;但是由于某些原因电视盒子没有用&#xff0c;于是就只能摆在那里吃土&#xff0c;闲来无事&#xff0c;搞一下 问题描述 提示&#xff1a;这里描述项目中遇到…

【数据结构和算法】找出叠涂元素

其他系列文章导航 Java基础合集数据结构与算法合集 设计模式合集 多线程合集 分布式合集 ES合集 文章目录 其他系列文章导航 文章目录 前言 一、题目描述 二、题解 三、代码 四、复杂度分析 前言 这是力扣的2661题&#xff0c;难度为中等&#xff0c;解题方案有很多种&…

Linux 系统是如何收发网络包的?(计算机网络)

一、Linux 网络协议栈 如下是TCP/IP四层网络模型&#xff0c;实际上Linux 网络协议栈与它相似 下图是Linux 网络协议栈 二、Linux 接收网络包的流程 1.网卡是计算机里的一个硬件&#xff0c;专门负责接收和发送网络包&#xff0c;当网卡接收到一个网络包后&#xff0c;会通过…

15、 深度学习之正向传播和反向传播

上一节介绍了训练和推理的概念,这一节接着训练和推理的概念讲一下,神经网络的正向传播和反向传播。 其实单看正向传播和反向传播这两个概念,很好理解。 正向传播(Forward Propagation)是指从输入层到输出层的数据流动过程,而反向传播(Backpropagation)是指数据从输出…

国际语音群呼系统

随着海外电话营销的发展&#xff0c;越来越多的出海企业通过国际语音群呼系统打开出海营销之路。企业出海营销运营&#xff0c;选择一个安全、高效、便捷的国际语音群呼系统非常重要。 一、什么是国际语音群呼系统&#xff1f; 国际语音群呼是指通过语音的方式批量向海外用户传…

如何使用 NFTScan NFT API 在 Starknet 网络上开发 Web3 应用

Starknet 是由以色列软件公司 StarkWare 开发的免许可的第 2 层网络。Starknet 作为以太坊上的 ZK Rollup 运行&#xff0c;帮助 dApp 使用 STARK 证明以更低的交易成本实现更大的计算规模。该网络允许智能合约与区块链上部署的其他合约进行交互&#xff0c;从而提高协议之间的…

drawio画图工具的四种使用方式

1、免安装使用&#xff08;绿色版&#xff09; 这种直接下载下来直接就可以使用&#xff0c;属于绿色版&#xff08;开箱即用&#xff09;&#xff0c;适用于个人 点击下载地址 2、 安装使用 这种下载下来就需要安装才可使用&#xff0c;适用于个人 点击下载地址 3、war包…

用100ask 6ull配合 飞凌 elf1的教程进行学习的记录

启动方式 百问网 elf1: 固件 emmc-otg 串口 网络 改eth0, 网线接在右边的网口eth2上

【高效开发工具系列】驼峰下划线互转

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

大数据技术之Oozie

大数据技术之Oozie 第1章 Oozie简介 Oozie英文翻译为&#xff1a;驯象人。一个基于工作流引擎的开源框架&#xff0c;由Cloudera公司贡献给Apache&#xff0c;提供对Hadoop MapReduce、Pig Jobs的任务调度与协调。Oozie需要部署到Java Servlet容器中运行。主要用于定时调度任…

NSDT场景编辑器实现真数字孪生

在线工具推荐&#xff1a; 三维数字孪生场景工具 - GLTF/GLB在线编辑器 - Three.js AI自动纹理化开发 - YOLO 虚幻合成数据生成器 - 3D模型在线转换 - 3D模型预览图生成服务 1、什么是数字孪生&#xff1f; 数字孪生是资产或系统的实时虚拟模型&#xff0c;它使用来自连…

spring boot 整合 spring security

项目结构 添加依赖 <parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.3.9.RELEASE</version><relativePath/></parent><dependency><grou…