2.1、matlab绘图汇总(图例、标题、坐标轴、线条格式、颜色和散点格式设置)

1、前言

在 MATLAB 中进行绘图是一种非常常见且实用的操作,可以用来可视化数据、结果展示、分析趋势等。通过 MATLAB 的绘图功能,用户可以创建各种类型的图形,包括线图、散点图、柱状图、曲线图等,以及三维图形、动画等复杂的可视化效果。

在绘图之前,通常需要先准备好要展示的数据,并对数据进行必要的处理和分析。在开始绘图之前,建议考虑以下几点:

  1. 数据准备:确保数据已经被正确导入到 MATLAB 中,并进行了初步处理,例如数据清洗、筛选、计算等操作。

  2. 绘图类型:根据展示的目的和数据的性质选择合适的绘图类型,例如选择散点图展示数据之间的关系,选择柱状图比较不同类别的数据等。

  3. 坐标轴标签:在绘制图形时,添加合适的坐标轴标签和标题可以使图形更易读,让观众更容易理解图形所表达的含义。

  4. 图例:如果图形包含多个数据集或曲线,可以添加图例以区分不同的数据部分,帮助观众理解图中的信息。

  5. 风格设置:通过设置线条样式、颜色、图形大小等参数,可以美化图形并使其更具吸引力。

在 MATLAB 中,绘图可以通过使用 plot、scatter、bar、imshow 等函数来实现,同时可以使用 hold、legend、xlabel、ylabel 等函数来控制图形的显示效果。绘图功能的灵活性和功能丰富性使得 MATLAB 成为科学研究、工程设计和数据分析方面的得力工具。

绘图时要注意数据的准确性和图形的清晰度,确保图形能够准确传达所要表达的信息。掌握好 MATLAB 的绘图功能,可以帮助用户更好地展示和分析数据,提高工作效率和数据可视化效果。

2、plot()函数默认格式画图

代码:

x=0:0.1:20;%绘图默认格式
y=sin(x);
plot(x,y)

3、X轴和Y轴显示范围/axis()函数

代码:

x=0:0.1:20;%绘图默认格式
y=sin(x);
plot(x,y)
axis([0 21 -1.1 1.1])%设置范围

 

4、网格显示/grid on函数  

代码:

x=0:0.1:20;%绘图默认格式
y=sin(x);
plot(x,y)
axis([0 21 -1.1 1.1])%设置范围
grid on%默认不显示网格

5、散点图及散点效果图

1)不同散点图

代码:

x=0:0.1:20;%点图
y=sin(x);
plot(x,y,'*') %正方形x=0:0.1:20;%点图
y=sin(x);
plot(x,y,'x') x=0:0.1:20;%点图
y=sin(x);
plot(x,y,'d') x=0:0.1:20;%点图
y=sin(x);
plot(x,y,'p') x=0:0.1:20;%点图
y=sin(x);
plot(x,y,'^') x=0:0.1:20;%点图
y=sin(x);
plot(x,y,'s') 

 

 

 2)设置散点大小

代码:

x1=0:0.1:20;
y1=cos(x1);
plot(x1,y1,'-p','color','g','MarkerSize',12)%设置散点大小12 9 6x1=0:0.1:20;
y1=cos(x1);
plot(x1,y1,'-p','color','g','MarkerSize',9)%设置散点大小12 9 6x1=0:0.1:20;
y1=cos(x1);
plot(x1,y1,'-p','color','g','MarkerSize',6)%设置散点大小12 9 6

6、绘图线条格式

代码:

x=0:0.1:20;%线穿过点图
y=sin(x);
plot(x,y,'—p') x=0:0.1:20;%线穿过点图
y=sin(x);
plot(x,y,':p') x=0:0.1:20;%线穿过点图
y=sin(x);
plot(x,y,':.') 

 

7、线条颜色设置

代码:

x=0:0.1:20;%线穿过点图 设置为红色
y=sin(x);
plot(x,y,'-p','color','k','MarkerSize',9)x=0:0.1:20;%线穿过点图 设置为红色
y=sin(x);
plot(x,y,'-p','color','r','MarkerSize',9)x=0:0.1:20;%线穿过点图 设置为红色
y=sin(x);
plot(x,y,'-p','color','g','MarkerSize',9)x=0:0.1:20;%线穿过点图 设置为红色
y=sin(x);
plot(x,y,'-p','color','b','MarkerSize',9)

 

 

8、线条格式、颜色、散点汇总表

代码:

x1=0:0.1:20;
y1=cos(x1);
plot(x1,y1,'-p','color','g','MarkerSize',9)%设置散点大小12 9 6

9、 同时显示两幅图

1)两幅图重叠

代码:

x=0:0.1:20;%线穿过点图 设置为红色
y=sin(x);
plot(x,y,'-p','color','b','MarkerSize',9)
hold on
x1=0:0.1:20;
y1=cos(x1);
plot(x1,y1,'-p','color','g','MarkerSize',9)%设置散点大小12 9 6

2)两幅图一行两列显示

代码:

x=0:0.1:20;%线穿过点图 设置为红色
y=sin(x);
subplot(1,2,1)
plot(x,y,'-p','color','b','MarkerSize',9)
x1=0:0.1:20;
y1=cos(x1);
subplot(1,2,2)
plot(x1,y1,'-p','color','g','MarkerSize',9)%设置散点大小

3)两幅图两行一列显示

代码:

x=0:0.1:20;%线穿过点图 设置为红色
y=sin(x);
subplot(2,1,1)
plot(x,y,'-p','color','b','MarkerSize',9)
x1=0:0.1:20;
y1=cos(x1);
subplot(2,1,2)
plot(x1,y1,'-p','color','g','MarkerSize',9)%设置散点大小

4)两幅图分开显示

代码:

x=0:0.1:20;%线穿过点图 设置为红色
y=sin(x);
figure(1)
plot(x,y,'-p','color','b','MarkerSize',9)
x1=0:0.1:20;
y1=cos(x1);
figure(2)
plot(x1,y1,'-p','color','g','MarkerSize',9)%设置散点大小

10、设置坐标范围及刻度

代码:

x=0:0.1:20;%线穿过点图 设置为红色
y=sin(x);
plot(x,y,'-p','color','b','MarkerSize',9)
hold on
x1=0:0.1:20;
y1=cos(x1);
plot(x1,y1,'-p','color','g','MarkerSize',9)%设置散点大小
set(gca,'XLim',[0 21])%设置X轴显示范围
set(gca,'XTick',[0:1:21])%设置显示坐标刻度
set(gca,'YLim',[-1.2 1.2])
set(gca,'YTick',[-1.2:0.1:1.2])

 

11、 图例设置

1)图例字体设置

代码:

x=0:0.1:20;%线穿过点图 设置为红色
y=sin(x);
plot(x,y,'-p','color','b','MarkerSize',9)
hold on
x1=0:0.1:20;
y1=cos(x1);
plot(x1,y1,'-p','color','g','MarkerSize',9)%设置散点大小
set(gca,'XLim',[0 21])%设置X轴显示范围
set(gca,'XTick',[0:1:21])%设置显示坐标刻度
set(gca,'YLim',[-1.2 1.2])
set(gca,'YTick',[-1.2:0.1:1.2])
legend('sin(x)','cos(x)','FontSize',10,'FontName','楷体');%添加图例(默认位置在右上),设置字体

2)图例位置设置

位置字符设置

代码:

x=0:0.1:20;%线穿过点图 设置为红色
y=sin(x);
plot(x,y,'-p','color','b','MarkerSize',9)
hold on
x1=0:0.1:20;
y1=cos(x1);
plot(x1,y1,'-p','color','g','MarkerSize',9)%设置散点大小
set(gca,'XLim',[0 21])%设置X轴显示范围
set(gca,'XTick',[0:1:21])%设置显示坐标刻度
set(gca,'YLim',[-1.2 1.2])
set(gca,'YTick',[-1.2:0.1:1.2])
legend('sin(x)','cos(x)','FontSize',10,'FontName','楷体','location','North');%添加图例(默认位置在右上),设置字体

图里面 

图外面 

12、标题及坐标轴设置

代码:

x=0:0.1:20;%线穿过点图 设置为红色
y=sin(x);
plot(x,y,'-p','color','b','MarkerSize',9)
hold on
x1=0:0.1:20;
y1=cos(x1);
plot(x1,y1,'-p','color','g','MarkerSize',9)%设置散点大小
set(gca,'XLim',[0 21])%设置X轴显示范围
set(gca,'XTick',[0:1:21])%设置显示坐标刻度
set(gca,'YLim',[-1.2 1.2])
set(gca,'YTick',[-1.2:0.1:1.2])
legend('sin(x)','cos(x)','FontSize',10,'FontName','楷体');%添加图例(默认位置在右上),设置字体
title('sin(x)和cos(x)')%设置标题
xlabel('X轴数值')
ylabel('Y轴数值')

13、总结

综合总结 MATLAB 中绘图的相关内容,可以得出以下几点要点:

  1. 数据准备:在进行绘图之前,首先需要准备好需要展示的数据,并确保数据的完整性和准确性。数据可以通过导入、生成或计算获得。

  2. 选择绘图类型:根据数据的性质和展示的目的,选择合适的绘图类型。常见的绘图类型包括线图、散点图、柱状图、曲线图、饼图等。

  3. 绘图函数:在 MATLAB 中,可以使用一系列绘图函数来创建各种类型的图形。常用的绘图函数包括 plot、scatter、bar、imshow 等。根据需要选择合适的函数进行绘图。

  4. 图形设置:在绘图过程中,可以通过设置不同的参数来调整图形的外观和样式,包括线条样式、颜色、标记、坐标轴标签、标题等。

  5. 图形控制:使用 hold 函数可以在同一图形中叠加显示多个数据集或图形。同时,可以使用 legend、xlabel、ylabel 等函数添加图例和标签,增强图形的可读性。

  6. 图形保存:绘制完成后,可以使用 saveas 函数将图形保存为图片文件,方便在其他文档中引用或分享。

  7. 脚本编写:为了方便重复利用和自动化生成图形,可以将绘图代码整理为脚本或函数,实现批量处理数据生成多个图形。

总的来说,通过 MATLAB 中丰富的绘图功能,用户可以利用其强大的数据处理和可视化能力,展示数据的分布、趋势、关联等信息,从而更好地理解数据、分析问题,进一步推动科研工作和工程实践的发展。熟练掌握 MATLAB 绘图技能可以提升工作效率和数据展示的质量。

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

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

相关文章

数据中台 | 3分钟带你读懂数据中台的由来

1.数据中台产生的原因 数据中台的概念起源于中国阿里巴巴集团提出的“大中台,小前台”战略。这一理念的核心在于通过构建强大的中台体系,为前端的快速创新和个性化业务需求提供强有力的支持。具体到数据中台,其设计初衷是为了应对企业内部数…

springboot在加了mapper之后报错

springboot在加了mapper之后报错 最后发现是spring boot版本不兼容,spring-boot-starter-parent换成3.0.5之后可以了

计算机基础-IO

一、裸机中的IO 我们先看下计算机的组成部分: 从图中我们很清楚的看到Input/Output 即为 IO,也就是计算机主机和外部设备进行信息的交换。 这种交换可能是磁盘IO也有可能是网络IO。 二、操作系统中的IO 操作系统分为内核态和用户态,且默认…

云WAF如何实现对XSS攻击的检测和阻断?

云WAF对XSS攻击的检测和阻断机制 云WAF(Cloud Web Application Firewall)是一种基于云平台的网络安全解决方案,专门设计用来保护Web应用程序免受各种网络攻击,包括跨站脚本攻击(XSS)。云WAF通过以下几个关…

活动预告|8月3日 Streaming Lakehouse Meetup · Online 与你相约!

随着大数据分析技术的发展,越来越多的企业采用了数据湖架构。基于 Lakehouse 的架构优势,结合 Flink 的 Streaming 实时流处理能力,Flink 推出了新一代的“Streaming Lakehouse”技术。这一技术旨在能够让数据在湖上自由流动,为用…

js 习题 3

文章目录 绪论12345678910 求最长公共后缀111213 最大公约数1415结语 绪论 『虽有遗憾,绝不后悔。』—— 「古剑奇谭」 1 let buf"";process.stdin.on("readable",function(){let chunkprocess.stdin.read();if(chunk){bufchunk.toString();} …

HTTP/1.1、1.2、1.3详细信息和主要区别

HTTP(超文本传输协议)是一种用于传输超文本(例如网页)的应用层协议。HTTP/1.1 是当前最广泛使用的版本,而 HTTP/2 和 HTTP/3 是其后续版本,旨在提高性能和效率。以下是这些版本的详细信息和主要区别 HTTP/…

从零开始创建vue3项目——包含项目初始化、element-plus、eslint、axios、router、pinia、echarts

项目启动 初始化vue3项目 这里建议先下载pnpm,下载速度更快,如果还没下载可以使用 npm install -g pnpm 如果遇到报错问题,如下 可以在命令行输入下面的指令以切换到淘宝镜像源 npm config set registry https://registry.npm.taobao.org…

2024最佳游戏引擎排行

游戏产业几十年来一直是一个大生意,而且发展势头迅猛。据估计,全球游戏市场在 2025 年每年将达到 5031.4 亿美元,2023 年为 3960 亿美元。 尽管如今有市面上有各种各样的解决方案,但游戏开发人员和管理者在选择适合他们需求的游戏…

LINUX操作系统安全

一、概述内容 操作系统负责计算机系统的资产管理,支撑和控制各种应用程序运行,为用户提供管理计算机系统管理接口。操作系统也是构成网络信息系统的核心关键组件,其安全可靠性决定了计算机系统的安全性和可靠性。 操作系统安全是指满足安全…

kettle从入门到精通 第八十课 ETL之kettle kettle中的json对象字段写入postgresql中的json字段

场景:源数据库表为mysql的其中有json字段,通过kettle 查询出来 插入到目标数据库 postgresql中,对应的表中也有json字段。。但是报错,提示kettle查询出来是varchar的的字段,无法插入到目标数据库中。 1、创建测试表。 …

golang设置远程调试

1. 目标机器构建安装dlv https://github.com/go-delve/delve go build之后将编译号的dlv命令路径添加到PATH里 2. 目标机器下载源代码并且运行dlv dlv debug --headless --listen:2345 --api-version2 --accept-multiclient 3.本机添加go remote 4. 设置断点即可

披荆斩棘:Python开发者在市场低迷期快速找到工作的策略

披荆斩棘:Python开发者在市场低迷期快速找到工作的策略 在瞬息万变的科技领域,市场低迷期对各个领域的专业人士来说都充满了挑战。Python开发者以其灵活性和专业性著称,但也无法完全避免经济波动的影响。然而,通过采取正确的策略…

Cesium高性能渲染海量矢量建筑

0、数据输入为类似Geojson的压缩文件和纹理图片,基于DrawCommand命令绘制; 1、自定义建筑几何,包括顶点、法线、纹理等; 2、自定义纹理贴图,包括按建筑高度贴图、mipmap多级纹理; 3、自定义批处理表&…

PHP商城案例

http://www.e9933.com/

使用DuiLib进行UI开发的虚函数解析及控件绑定、响应与消息处理

DuiLib是一个开源的基于DirectUI思想的Windows界面库,提供了灵活且易用的UI界面开发能力。在使用DuiLib进行开发时,我们常常会遇到一些虚函数,它们在不同的阶段被调用,以完成各种初始化和消息处理工作。本文将详细介绍DuiLib中的一…

DVWA中命令执行漏洞细说

在攻击中,命令注入是比较常见的方式,今天我们细说在软件开发中如何避免命令执行漏洞 我们通过DVWA中不同的安全等级来细说命令执行漏洞 1、先调整DVWA的安全等级为Lower,调整等级在DVWA Security页面调整 2、在Command Injection页面输入127.0.0.1&…

手把手教你入门vue+springboot开发(十)--springboot集成WebSocket

文章目录 前言一、springboot集成WebSocket二、后端代码实现1.WebSocket服务端实现2.业务逻辑实现3.ObjectMapper的作用三、前端代码实现四、postman调试总结前言 在B/S开发的有些业务场景中后端需要向前端上报一些事件消息,比如某个用户登录或者退出时,后端需要将此事件通知…

线程安全的艺术:在Perl中实现线程安全的编程

线程安全的艺术:在Perl中实现线程安全的编程 在多线程编程中,确保程序的线程安全性是至关重要的。Perl,作为一种支持多线程的高级编程语言,提供了多种机制来帮助开发者编写线程安全的代码。本文将深入探讨如何在Perl中实现线程安…