MATLAB基本绘图操作(二维和三维绘图)
MATLAB基本绘图操作
文章目录
- MATLAB基本绘图操作
- 1、二维平面绘图
- 1.1、线条(折线图)
- 1.2、条形图
- 1.3、极坐标图
- 1.4、散点图
- 2、三维立体绘图
- 2.1、三维曲面图
- 2.2、三维曲线图(点图)
- 3、图片分区(子图)
1、二维平面绘图
1.1、线条(折线图)
x=0:0.01:2*pi; %从09开始,每次递增0.01,一直到2*pi结束
y = sin(x) ;
figure %建立一个幕布
plot(x, y) %绘制二维的平面图 %若(x,y ,'Linewidth',2)可变粗,后面的数字参数用来调整线条的粗细
%plot(x, y1,x,y2) %设置两个图在同一块幕布下
title('y = sin(x)') %标题
xlabe1('x') %x轴的标签
ylabe1('sin(x)') %y轴的标签
xlim([0 2*pi]) %将绘图的x轴限制设置为介于0和2*pi之间
grid on %添加网格
axis([0 20 -1.5 1.5]) %用来设置横纵坐标的范围,x:0~20 y:-1.5~1.5
- 执行结果:
- 设置颜色,线条风格等:
x = 0:0.01:20;
y1 = 200*exp (-0.05*x).*sin(x);
y2 = 0.8*exp (-0.5*x).*sin(10*x);
figure
[AX, H1, H2] = plotyy(x, y1,x, y2, 'plot'); %plotyy是公用一个坐标系,并在y上面有不同的取值,两条线
set(get(AX(1),’Ylabel'), 'String', 'Slow Decay')
set(get(AX(2),'Ylabel'), 'String','Fast Decay')
xlabel('Time (\musec)')
title(' Multiple Decay Rates')
set (H1, 'LineStyle','--') %设置H1线的风格设置为虚线
set (H2, 'LineStyle',':') %冒号线,更多样式请参考下面的表
运行结果:
1.2、条形图
bar
函数创建垂直条形图
barh
函数用来创建水平条形图
t = -3:0.5:3 %范围是-3~3,步长为0.5(可以理解为条形的宽度)
p = exp(-t.*t) %见注释①
subplot(2,1,1) %分割幕布,取第一块
bar(t,p) %竖轴条形图
subplot(2,1,2) %分割幕布,取第二块
barh(t,p) %横轴条形图
注释①:
1.3、极坐标图
polarplot
函数用来绘制极坐标图
theta = 0:0.01:2*pi %pi就是圆周率π
radi = abs(sin(2*theta).*cos(2*theta)); % abs函数求得是绝对值
polarplot(theta,radi) %括号内是圆弧的半径
1.4、散点图
scatter
函数用来绘制×和y值的散点图
Height = randn(1000,1);%生成1000行1列的均匀分布的伪随机数,并且符合正态分布
Weight = randn(1000,1);
scatter(Height,Weight)
xlabel('Height')
ylabel('Weight')
2、三维立体绘图
2.1、三维曲面图
surf
函数可用来做三维曲面图。一般是展示函数z=z(x,y)的图像首先需要用meshgrid
创建好空间上(x,y)
点。
[×,Y] = meshgrid(-2:0.2:2); %在平面布置函数,在-2~2的平面上,每隔0.2布置一个点
%Z =×.^2 + Y.^2
z = x.*exp( -x.^2-Y.^2); %关于z的一个关系式:e的-x的平方-y的平方的次方,见注释②
surf(×,Y,Z);
%colormap hsv
%colormap设置颜色,可跟winter、summer等,hsv
%colorbar %傍边展示不同颜色不同的数值区间范围
注释②:
2.2、三维曲线图(点图)
t = 0: pi/50:10*pi ;
plot3(sin(t),cos(t),t) %plot3三维绘图的标志,参数分别是x,y,z
xlabel('sin(t)') %x轴的标签
ylabel('cos(t)')
zlabel('t')
%hold on %中使用“保持”命令来保留当前绘图,同时向同一图形添加新的绘图。这允许在同一图形上显示多个绘图。
%hold off %“暂停”命令用于关闭暂停功能,这意味着后续绘图将替换图中的现有绘图,而不是添加到图中。
grid on %添加网格线
axis square %形成正方形图
执行结果:
3、图片分区(子图)
x=linspace(0,2*pi,60);
subplot(2,2,1) %将图形窗口分为2行2列,并且取到第1块
plot(x, sin(x)-1);
title('sin(x)-1'); axis([0,2*pi,-2,0])
subplot(2,1,2)
plot(x, cos(x)+1);
title('cos(x)+1'); axis([0,2*pi,0,2])
subplot(4,4,3)
plot(x, tan(x));
title('tan(x)'); axis([0,2*pi,-40,40])
subplot(4,4,8) %将图形窗口分为4行4列,并且取到第8块
plot(x, cot(x));
title('cot(x)');
axis([0,2*pi, -35,35])
相关文章:

MATLAB基本绘图操作(二维和三维绘图)
MATLAB基本绘图操作 文章目录 MATLAB基本绘图操作1、二维平面绘图1.1、线条(折线图)1.2、条形图1.3、极坐标图1.4、散点图 2、三维立体绘图2.1、三维曲面图2.2、三维曲线图(点图) 3、图片分区(子图) 1、二维…...
中国社科院与新加坡新跃社科联合培养博士—攻读在职博士的理由是什么?
当今社会,很多人已经深刻的意识到知识是改变自己命运的重要途径,在职教育的完善让很多在职人员选择此方式进修,那么为什么要选择攻读在职博士?中国社科院与新加坡新跃社科联合培养博士与您一起走进,在职博士。 那么其…...

T40N 君正智能处理器T40 BGA 芯片
T40N是一款智能视频应用处理器,适用于移动摄像机、安防等视频设备调查、视频聊天、视频分析等。该SoC引入了一种创新的体系结构满足高性能计算和高质量图像和视频编码的要求通过视频设备解决。T40N提供高速CPU计算能力,出色的图像信号过程中,…...

Profinet转Modbus使设备互联更简单
在工业自动化领域,为了使设备互联更加简单,可以将Modbus和Profinet相互转换。这样一来,设备之间的互联就变得更加方便和高效。通过Modbus转Profinet网关(XD-MDPN100/200),设备之间的通信变得更加灵活和可靠…...

Android 文字垂直排列,文字向右旋转90度
public class VerticalTextView extends View {private final int ROTATION_ANGLE 90; // 旋转角度,用于将文本垂直排列private String text; // 要显示的文本private TextPaint textPaint; // 用于绘制文本的画笔private Rect textBounds;// 文本边界float x, y;/…...

域名授权验证系统PHP源码,盗版追踪、双重授权和在线加密功能,附带安装教程
源码介绍 PHP域名授权验证系统是一个功能强大的系统,提供了多项功能来保护你的域名和软件的合法性。它包括盗版追踪、域名IP双重授权、在线加密等功能,同时还提供了PHP授权验证更新系统的完整版,方便你进行一键更新和生成自助授权。 盗版追…...
Qt线程封装FFmpeg播放器类
介绍 工作开发中需要处理的文件很多并无音频,针对这一场景,这里分享工作中自己封装使用的类库。精简的代码实现了播放、暂停、停止、快进、快退、进度跳转、倍速播放功能。直接放代码,方便后期复制使用。 代码 头文件 /*** file videopla…...
git 常用命令 修改 远程仓库 默认分支
git remote set-head origin -a 将 origin/HEAD 指向 远程仓库的 默认分支(-a 即 --auto) git remote set-head origin dev 将 origin/HEAD 指向 (origin/dev) git remote set-head origin -d 删除 origin/…...
springboot项目禁用dataSource数据源功能,只需修改yml文件,关闭数据库连接功能
当我们遇到以下报错: Description: Failed to configure a DataSource: url attribute is not specified and no embedded datasource could be configured. Reason: Failed to determine a suitable driver class Action: Consider the following: If you …...
【Vue.js设计与实现解读-1】
Vue设计与实现阅读-1 1、命令式和声明式2、性能3、虚拟DOM性能4、运行时和编译时5、总结 前言 最近工作清闲了些,想着很久没有看书,Vue.js设计与实现这本书看了好几次都没有读完,趁着这个机会边读边记录一下吧。如果有理解的不正确的地方&…...

苗情生态自动监测系统-科普知识
随着科技的飞速发展,智能化技术在各个领域的应用越来越广泛。在农业领域,苗情生态自动监测系统的出现,为农业生产带来了革命性的变革。它不仅能够实时监测植物的生长状况,还能对环境因素进行全面监控,为农业生产提供科…...

test 系统学习-04-test converate 测试覆盖率 jacoco 原理介绍
测试覆盖率 测试覆盖率(test coverage)是衡量软件测试完整性的一个重要指标。掌握测试覆盖率数据,有利于客观认识软件质量,正确了解测试状态,有效改进测试工作。 当然,要发挥这些作用,前提是我们掌握了真实的测试覆盖…...

小型企业成为网络犯罪分子获取数据的目标
在过去十年的大部分时间里,网络犯罪的巨额资金来自针对大型组织的勒索软件攻击。这种威胁仍然存在。但犯罪分子可能会将注意力转向中小企业 (SMB)。这对消费者的影响将是巨大的。 将软件即服务 (SaaS) 技术用于核心业务功能继续将中小企业整合到全球供应链中。由于…...

PyTorch的Tensor(张量)
一、Tensor概念 什么是张量? 张量是一个多维数组,它是标量、向量、矩阵的高维拓展 Tensor与Variable Variable是torch.autograd中的数据类型,主要用于封装Tensor,进行自动求导。 data: 被包装的Tensorgrad: data的梯度&…...

spug发布问题汇总记录
问题导览 1. [vite]: Rollup failed to resolve import "element-plus" from "src/main.js". 项目框架简介 vue3viteelement-plus 解决方案 - 1. 配置淘宝镜像源:npm config set registry https://registry.npm.taobao.org/ - 2. npm inst…...

SpringBoot-搭建集成Mybatis的项目
本文介绍了如何在IntelliJ IDEA中使用SpringBoot和Mybatis构建Java Web应用程序。通过本文的学习,读者将了解如何使用IntelliJ IDEA快速搭建一个基于SpringBoot和Mybatis的Java Web应用程序,提高开发效率。IntelliJ IDEA是一款功能强大的Java集成开发环境…...
mysql隐式转换规则
MySQL 中的隐式类型转换发生在比较操作或者其他一些需要特定数据类型参数的上下文中,如果参与操作的表达式或列的数据类型不匹配,MySQL 就会自动进行数据类型转换以适配预期的数据类型。 以下是 MySQL 的一些常见隐式转换规则: 字符串和数字…...

怎么解决 Nginx反向代理加载速度慢?
Nginx反向代理加载速度慢可能由多种原因引起,以下是一些可能的解决方法: 1,网络延迟: 检查目标服务器的网络状况,确保其网络连接正常。如果目标服务器位于不同的地理位置,可能会有较大的网络延迟。考虑使用…...
Eureka工作原理超详细讲解介绍
Eureka 是 Netflix 开源的一款服务注册与发现框架,主要用于构建分布式系统中的服务治理和负载均衡。下面是关于 Eureka 工作原理的详细介绍:1.Eureka 架构: Eureka 采用了客户端-服务器架构,包括 Eureka Server 和 Eureka Client …...
SQL WHERE 语句(条件选择)
WHERE 子句用于过滤记录。 SQL WHERE 子句 WHERE 子句用于提取那些满足指定条件的记录。 SQL WHERE 语法 SELECT column1, column2, ... FROM table_name WHERE condition; 参数说明: column1, column2, ...:要选择的字段名称,可以为多…...
uniapp 对接腾讯云IM群组成员管理(增删改查)
UniApp 实战:腾讯云IM群组成员管理(增删改查) 一、前言 在社交类App开发中,群组成员管理是核心功能之一。本文将基于UniApp框架,结合腾讯云IM SDK,详细讲解如何实现群组成员的增删改查全流程。 权限校验…...
前端倒计时误差!
提示:记录工作中遇到的需求及解决办法 文章目录 前言一、误差从何而来?二、五大解决方案1. 动态校准法(基础版)2. Web Worker 计时3. 服务器时间同步4. Performance API 高精度计时5. 页面可见性API优化三、生产环境最佳实践四、终极解决方案架构前言 前几天听说公司某个项…...
mongodb源码分析session执行handleRequest命令find过程
mongo/transport/service_state_machine.cpp已经分析startSession创建ASIOSession过程,并且验证connection是否超过限制ASIOSession和connection是循环接受客户端命令,把数据流转换成Message,状态转变流程是:State::Created 》 St…...

Mybatis逆向工程,动态创建实体类、条件扩展类、Mapper接口、Mapper.xml映射文件
今天呢,博主的学习进度也是步入了Java Mybatis 框架,目前正在逐步杨帆旗航。 那么接下来就给大家出一期有关 Mybatis 逆向工程的教学,希望能对大家有所帮助,也特别欢迎大家指点不足之处,小生很乐意接受正确的建议&…...
Qt Widget类解析与代码注释
#include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget) {ui->setupUi(this); }Widget::~Widget() {delete ui; }//解释这串代码,写上注释 当然可以!这段代码是 Qt …...

CocosCreator 之 JavaScript/TypeScript和Java的相互交互
引擎版本: 3.8.1 语言: JavaScript/TypeScript、C、Java 环境:Window 参考:Java原生反射机制 您好,我是鹤九日! 回顾 在上篇文章中:CocosCreator Android项目接入UnityAds 广告SDK。 我们简单讲…...

C# 类和继承(抽象类)
抽象类 抽象类是指设计为被继承的类。抽象类只能被用作其他类的基类。 不能创建抽象类的实例。抽象类使用abstract修饰符声明。 抽象类可以包含抽象成员或普通的非抽象成员。抽象类的成员可以是抽象成员和普通带 实现的成员的任意组合。抽象类自己可以派生自另一个抽象类。例…...
CRMEB 框架中 PHP 上传扩展开发:涵盖本地上传及阿里云 OSS、腾讯云 COS、七牛云
目前已有本地上传、阿里云OSS上传、腾讯云COS上传、七牛云上传扩展 扩展入口文件 文件目录 crmeb\services\upload\Upload.php namespace crmeb\services\upload;use crmeb\basic\BaseManager; use think\facade\Config;/*** Class Upload* package crmeb\services\upload* …...

华硕a豆14 Air香氛版,美学与科技的馨香融合
在快节奏的现代生活中,我们渴望一个能激发创想、愉悦感官的工作与生活伙伴,它不仅是冰冷的科技工具,更能触动我们内心深处的细腻情感。正是在这样的期许下,华硕a豆14 Air香氛版翩然而至,它以一种前所未有的方式&#x…...

DeepSeek源码深度解析 × 华为仓颉语言编程精粹——从MoE架构到全场景开发生态
前言 在人工智能技术飞速发展的今天,深度学习与大模型技术已成为推动行业变革的核心驱动力,而高效、灵活的开发工具与编程语言则为技术创新提供了重要支撑。本书以两大前沿技术领域为核心,系统性地呈现了两部深度技术著作的精华:…...