MATLAB可视化图形绘制详解

news2024/11/26 23:47:27

图形常见的修饰命令

①曲线修饰

曲线修饰包括曲线的顔色、线型和标示符号的设置。曲线修饰的命令格式如下。

plot(x,y,'option'):option定义了曲线的颜色、线型和标示符号。

MATLAB曲线修饰的各种选项见表

举例:

x=-2*pi:pi/50:2*pi;

y1=x.^2;y2=cos(2*X);y3=y1.*y2;plot(x,y1,'g+');holdon;plot(x,y2,’r:*’);holdon;plot(x,y3,'b--.')

②图形坐标轴设置

1.坐标轴范围设置。命令格式如下。

axis([xmin xmax ymin ymax]):设置坐标轴的最小值和最大值。

其中xmin和xmax分别为:x轴的最小值和最大值;ymin和ymax分别为y轴的最小值和最大值。默认是自动设置坐标轴显示的上下限。

2.坐标轴标注设置。命令格式如下。

xlabel('字符串'):在x轴上设置标签。

ylabel('字符串'):在y轴上设置标签

其中字符串表示在x、y坐标轴上要显示的名称和单位等。

3.坐标轴数据显示。命令格式如下。

set(gca,'XTick',x1;x2:x3):设置x坐标轴的刻度值。

set(gca,'YTick',y1:y2:y3):设置y坐标轴的刻度值。

其中gca表示当前图形:XTick表示X轴坐标刻度;x1、x2、x3分别为x坐标轴的起点坐标值、坐标间隔和终点坐标值:YTick表示y轴坐标刻度;y1、y2、y3分别为y坐标轴的起点坐标值、坐标间隔和终点坐标值。

axis函数功能丰富.常用的命令格式还有以下几种。

axis equal;纵、横坐标轴采用等长刻度。

axis square:产生正方形坐标系.缺省为长方形。

axis auto:使用缺省设置。

axis off:取消坐标轴。

axis on;显示坐标轴

举例:

某发动机转速与扭矩的关系为:

绘制发动机转速n=0~5000r/min的转速-扭矩曲线,并对坐标轴进行设置

n=0:100:5000;
T=(6.711e-10)*n.^3-(1.837e-5)*n.^2+0.08672*n+78.25;
plot(n,T);
xlabel('转速/(r/min)');
ylabel('扭矩/(N.m)');
set(gca,'XTick',0:1000:5000);
set(gca,'YTick',0:40:200);
axis([0 5000 0 200]);

③图形标注

图形标注主要有以下3种方式。

1.在图形屏幕上开启ー个小视窗,依据绘图命令的先后顺序,用对应的字符串区分图形上的曲线。

2.在图形的指定坐标位置(x,y)处标注单引号括起来的字符串。

3.在图形的最上端显示说明该图形标题的字符串。

图形标注的命令格式如下。

legend('字符串','字符串',......);在图形小视窗内标注。

text(x,y,'字符串'):在图形指定位置(x,y)处标注。

title('字符串’):在图形最上端标注

④图形栅格和边框控制

1.图形栅格控制。在图形上添加或删除栅格的命令格式如下。

grid on:在当前坐标系上添加栅格。

gridoff;从当前坐标系上删除栅格。

2.国形边框控制。图形边框的命令格式如下。

box on:在当前图形上添加边框。

boxoff;从当前图形上删除边框。

⑤图形窗口的设置

1.图形窗ロ打开。命令格式如下。

figure(n):设置第n个图形窗ロ。

2.图形窗口分割。命令格式如下。

subplot(m,n,p):设置m*n个子窗口。其中m为绘图区的行数;n为绘图区的列数;P为图形编号

⑥双纵坐标图的绘制

双纵坐标图是指具有两个纵坐标的图形,即把两条不同的曲线绘制在同一坐标中。双纵坐标图绘制的命令格式如下。

plotyy(x1,y1,x2,y2):绘制双纵坐标图。

其中x1、y1对应一条曲线,x2、y2对应另一条曲线,y1对应左纵坐标轴,y2对应右纵坐标轴。

双纵坐标图返回参数的命令格式如下。

[AX,H1,H2]=plotyy(x1,y1,x2,y2):获得坐标轴和图形的句柄。其中AX是坐标轴的句柄,AX(1)为左纵坐标轴的句柄.AX(2)为右纵坐标轴的句柄,H1为图形1的句柄,H2为图形2的句柄

举例:

某发动机转速与扭矩关系为:

发动机的功率公式为:

发动机转速范围n=0~5000r/min,请用双纵坐标绘制扭矩、功率与转速的曲线

n=1000:100:5000;
T=(6.711e-10)*n.^3-(1.837e-5)*n.^2+0.08672*n+78.25;
P=T.*n./9550;
[AX,H1,H2]=plotyy(n,P,n,T);
set(get(AX(1),'ylabel'),'string','功率/kW');
set(get(AX(2),'ylabel'),'string','扭矩/(N.m)');
xlabel('转速/(r/min)');
set(AX(1),'Ylim',[0,100]);
set(AX(2),'Ylim',[100,200]);
set(AX(1),'yTick',0:50:100);
set(AX(2),'yTick',100:50:200);
text(2000,50,'功率');
text(2000,50,'扭矩');
set(H2,'color','r');

⑦对数坐标轴绘制

对数坐标图分为半对数坐标图和全对数坐标图.也称单对数坐标图和双对数坐标图,

1.半对数坐标图。绘制的命令格式如下。

semilogx(x,y,'选项'):绘制以x轴为对数坐标、y轴为线性坐标的半对数坐标图。

semilogy(x,y,选项'):绘制以y轴为对数坐标、x轴为线性坐标的半对数坐标图。其中选项包括颜色、线型和标示符号,也可缺省。

2.全对数坐标图。绘制的命令格式如下。loglog(x,y,'选项'):绘制以x轴、y轴为对数坐标的全对数坐标图

⑧极坐标图的绘制

极坐标图是指在极坐标系中绘制的图。极坐标系是指在平面内由极点、极轴和极径组成的坐标系。在平面上取定一点o,称为极点,从o出发引一条射线ox.称为极轴.再取定ー个单位长度.通常规定角度取逆时针方向为正,这样,平面上任一点p的位置就可以用线段op的长度ρ以及从ox到op的角度θ来确定,有序数对(ρ,θ)就称为p点的极坐标,ρ称为p点的极径.θ称为p点的极角。极坐标图绘制的命令格式如下。

polar(theta,rho,'选项'):绘制极坐标图。

其中theta为极角;rho为极径;选项的内容为曲线的颜色、线型和标示符号

统计图形的绘制

①直方图的绘制

直方图是ー种统计报告图.由一系列高度不等的纵向条纹或线段表示数据分布的情况。 直方巧绘制的常见命令格式如下。

bar(x,y):绘制二维竖直方图。

barh(x,y):绘制二维横直方图。

bar3(x,y):绘制三维竖直方图。

barh3(x,y);绘制三维横直方图。

可以对直方图进行修饰。

bar(__,width):设置条形的相对宽度与控制组中各个条形的间隔。

例如,bar(x,y,0.4)表示将各条形的宽度设置为各条形可用总空间的40%。

bar(__,corlor):设置所有条形的颜色。例如,bar(x,y,'r')表示红色条形。

举例

x=1:1:5;
y=[2 5 3 2 4];
bar(x,y,0.2,'g');

变换另一种形式:

x=1:1:5;
y=[2 5 3 2 4];
bar(x,y,0.8,'g');
axis([0 8 0 10]);
for i=1:length(x)
    text(i,y(i)-0.5,num2str(y(i)),'color','b');
end

②饼状图的绘制

饼状图显示ー个数据系列中各项的大小与各项总和的比例。饼状图中的数据点显示为整 个饼状图的百分比。 饼状图绘制的基本命令格式如下。

pie(x):绘制二维饼状图。

pie3(x):绘制三维饼状图。

饼状图的每个扇区代表x中的ー个元素;当x中的值的个数大于1时.转化成100%的 比例进行绘制。

举例:

x=[125 88 101];
subplot(1,2,1);
pie(x);
legend('大','中','小');
subplot(1,2,2);
pie3(x);

③阶梯图的绘制

阶梯图绘制的命令格式如下。

stairs(x,y);绘制阶梯图。

举例:

x=1:1:100;
y=1:2:200;
plot(x,y);
hold on
stairs(x,y);

④离散数据散点图的绘制

散点图是指数据点在直角坐标系平面上的分布图.它表示因变量随自变量而变化的大致趋势。 离散数据散点图绘制的命令格式如下。

stem(x,y):绘制离散数据散点图。 

举例:

x=1:5:100;
y=1:10:200;
stem(x,y);

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

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

相关文章

STM32应用开发教程进阶--Wi-Fi通信(ESP8266模块:STA、AP、STA+AP)

实现目标 1、熟悉Wi-F、ESP8266模块 2、掌握ESP8266模块共3种工作模式:STA、AP、STAAP的配置 3、具体实现目标:(1)AT固件烧录;(2)ESP8266模块STA、AP、STAAP的配置 一、Wi-Fi概述 1、Wi-Fi定…

pycharm配置wsl开发环境(conda)

背景 在研究qanything项目的过程中,为了进行二次开发,需要在本地搭建开发环境。然后根据文档说明发现该项目并不能直接运行在windows开发环境,但可以运行在wsl环境中。于是我需要先创建wsl环境并配置pycharm。 wsl环境创建 WSL是“Windows Su…

31 OpenCV 距离变换和分水岭算法

文章目录 距离变换分水岭算法distanceTransform 距离变换watershed 分水岭算法示例 距离变换 分水岭算法 distanceTransform 距离变换 void cv::distanceTransform (InputArray src,OutputArray dst,int distanceType,int maskSize,int dstType CV_32F) src:输入图像&#xf…

文件Tools工具 支持WORD/PDF/EXCEL/PDF等格式的转换软件

文件Tools工具 支持WORD/PDF/Excel/PDF等格式的转换软件 支持功能 Word转PDFWORD转EXCELWORD转EPUBPDF转WORDPDF转EXCELPDF转PPTPDF版本转换EXCEL转PDFEXCEL转WORDPDF转EXCELEPUB转WORDEPUB转PDFHTML转PDF(需配置chromium)点击查看配置教程简易二维码生…

Jmeter05:配置环境变量

1 Jmeter 环境 1.1 什么是环境变量?path什么用? 系统设置之一,通过设置PATH,可以让程序在DOS命令行直接启动 1.2 path怎么用 如果想让一个程序可以在DOS直接启动,需要将该程序目录配置进PATH 1.3 PATH和我们的关系…

秋招后端开发面试题 - JVM底层原理

目录 JVM底层原理前言面试题Java 对象的创建过程?什么是指针碰撞?什么是空闲列表?/ 内存分配的两种方式?JVM 里 new 对象时,堆会发生抢占吗?JVM 是怎么设计来保证线程安全的?/ 内存分配并发问题…

微星主板安装双系统不能进入Ubuntu的解决办法

在微星主板的台式机上面依次安装了Windows11和Ubuntu22.04。在Ubuntu安装完成后重启,没有出现系统选择界面,直接进入了Windows11。怎么解决?方法如下: (1)正常安装Windows11 (2)安…

面试题:斐波那契数列

题目描述: 写一个函数,输入n,求斐波那契数列的第n项.斐波那契数列定义如下: F(0) 0 F(1) 1 F(N) F(N - 1) F(N - 2), 其中 N > 1. 解题方法: 算法1: 利用递归实现,这个方法效率有严重问题,时间复杂度为O(2^n) long long Fibon(int n) {if (…

正点原子[第二期]Linux之ARM(MX6U)裸机篇学习笔记-6.5, 汇编 led.s,第一次点亮LED灯

前言: 本文是根据哔哩哔哩网站上“正点原子[第二期]Linux之ARM(MX6U)裸机篇”视频的学习笔记,在这里会记录下正点原子 I.MX6ULL 开发板的配套视频教程所作的实验和学习笔记内容。本文大量引用了正点原子教学视频和链接中的内容。…

Linux命令大全 以及搭建hadoop

Liunx系统目录 ├── bin -> usr/bin # 用于存放二进制命令 ├── boot # 内核及引导系统程序所在的目录 ├── dev # 所有设备文件的目录(如磁盘、光驱等) ├── etc # 配置文件默认路径、服务启动命令存放目录 ├── home # 用户家目录&#…

Linux驱动开发——(六)按键中断实验

目录 一、简介 二、修改设备树 2.1 添加pinctrl节点 2.2 添加KEY设备节点 2.3 检查是否被其他外设使用 三、代码 3.1 驱动代码 3.2 测试代码 3.3 平台测试 一、简介 以I.MX6U-MINI为例,实现KEY0按下后,设备识别到并将数据发送到平台。 二、修…

字典及GitHub字典爬取工具

红队API接口Fuzz字典可以用于WEB安全,渗透测试,SRC等场景 完整文件已上传知识星球,需要的朋友可加入查看。

fetch请求后端返回文件流,并下载。

前端&#xff1a; <script src"~/layui/layui.js"></script> <script src"~/Content/js/common/js/vue.min.js"></script> <script src"~/Content/js/common/js/jquery-1.10.2.min.js"></script><styl…

jvisualvm安装插件

1、打开VisualVM: Plugins Centers 找到对应JDK版本的插件点击下载即可&#xff0c;本案例以JDK1.8.0_181为例子&#xff0c;点击进去&#xff0c;再找到需要安装的插件点击下载 2、打开jvisualvm 在工具——》插件 的【已下载】tab&#xff0c;点击【添加插件 】安装下载下来 …

前端入门:HTML(css轮廓,填充,宽高)

1.CSS轮廓 注意&#xff1a; outline中&#xff0c;out-style是必须要设置的&#xff0c;格式为&#xff1a; outline-style一共有以下的几个值&#xff1a; 2.CSS填充属性 这是一个用于在一个元素的内容周围产生空间&#xff0c;也就是边框内到白框外之间的距离&#xff0c;…

Vue2 - 完成实现ElementUI中el-dialog弹窗的拖拽功能(宽度高度适配,且关闭后打开位置居中)

我们在做后台管理系统时常用到ElementUI 中的 el-Dialog,但是官方文档并未我们提供 el-Dialog弹窗如何实现拖拽功能,我们通常需要思考如何让用户能够自由地拖动弹窗,在页面上调整位置以获得更好的用户体验。在下面的博客文章中,我们将实现如何为 ElementUI 的 el-Dialog 弹…

uniapp自定义返回事件(封装)

uniapp自定义返回事件 在我们使用uniapp时&#xff0c;我们导航栏一般都是自定义的&#xff0c;比如用uview框架的导航栏&#xff0c;那么返回事件通常会遇到以下几个问题 返回事件前需要做一些额外的处理 h5项目刷新页面后返回失效 返回按钮点击后到指定页面 如果只是监听返…

【简单介绍下日常的启发式算法】

&#x1f3a5;博主&#xff1a;程序员不想YY啊 &#x1f4ab;CSDN优质创作者&#xff0c;CSDN实力新星&#xff0c;CSDN博客专家 &#x1f917;点赞&#x1f388;收藏⭐再看&#x1f4ab;养成习惯 ✨希望本文对您有所裨益&#xff0c;如有不足之处&#xff0c;欢迎在评论区提出…

PostgreSQL 14 向量相似度搜索插件 (pgvector) 安装指南

本文是关于在 PostgreSQL 14 中安装并使用向量相似度搜索插件(pgvector)的详细指南。此插件允许用户在数据库中执行高效的向量运算,特别适用于机器学习模型的向量数据存储与检索场景。 环境需求 已安装PostgreSQL 14或更高版本。安装了Visual Studio 2022,用于编译插件。安装…

排序算法:插入、希尔、选择、推排、冒泡、快速、归并排序

排序算法 目录 前言 一、排序的概念 1.1排序的概念 1.2 常见的排序算法 二、常见排序算法的实现 2.1 插入排序 2.2 希尔排序 2.3 选择排序 2.4 堆排序 2.5 冒泡排序 2.6 快速排序 2.6.1 hoare版本 2.6.2 前后指针版本 2.6.3 非递归版本 2.7 归并排序 归并排序 2.8 计数排序 三、…