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://xiahunao.cn/news/3268754.html

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

相关文章

京东云ifrit-agent占用80端口问题

即使停止服务后还是会自动重启,网上查找无果后询问京东云客服,人家服务蛮好,回复很快 解决办法 centos7: 停止服务 systemctl stop ifritd 卸载 rm -rf /usr/local/share/jcloud/ifrit centos 6: 停止服务 cd /usr/local…

Windows系统安装FinalShell

一、下载 通过百度网盘分享的文件:finalshell_install.exe 链接:https://pan.baidu.com/s/1_vcb_t-Cp4TZSN4nWUmLww 提取码:d6v8 二、安装 三、远程连接Linux系统 (1)打开VMware虚拟机 右键空白区域,点击open Terminal 输入命令…

AI/机器学习(计算机视觉/NLP)方向面试复习3

1. Pooling 有哪些方式?pytorch的实现? Pooling可以分成:最大池化,平均池化,全局平均池化,随机池化,空间金字塔池化。 1. 最大池化(Max Pooling) 最大池化是最常用的池…

YOLOv8魔改核心-模型yaml文件解析与网络结构打印

前言 本篇文章主要用于记录学习YOLOv8中网络模型yaml文件,我们一般只知道如何去训练模型,和配置yaml文件,但是对于yaml文件是如何输入到模型里,模型如何将yaml文件解析出来的确是不知道的,下面我们从yaml文件来讲解&a…

C语言同时在一行声明指针和整型变量

如果这么写, int *f, g; 并没有声明2个指针,编译器自己会识别,f是一个指针,g是一个整型变量; void CTszbView::OnDraw(CDC* pDC) {CTszbDoc* pDoc GetDocument();ASSERT_VALID(pDoc);// TODO: add draw code for nat…

Java算法之递归算法-如何计算阶乘的值

上一篇学了递归之后,练习一下递归算法。 题目:使用递归算法计算阶乘的值,也就是5!5*4*3*2*1,直接使用循环是非常简单的,这边练习一下递归算法。 先写一下两个条件 基线条件:等于1的时候返回1…

学习C语言第十四天(指针练习)

1.第一题C 2.第二题C 3.第三题 00345 short类型解引用一次访问两个字节 4.第四题 6,12 5.第五题C 6.第六题 下面代码结果是0x11223300 7.第七题 int main() {int a 0;int n 0;scanf("%d %d",&a,&n);int i 0;int k 0;int sum 0;for (i 0;…

Docker 搭建Elasticsearch详细步骤

本章教程使用Docker搭建Elasticsearch环境。 一、拉取镜像 docker pull docker.elastic.co/elasticsearch/elasticsearch:8.8.2二、运行容器 docker run -d --name elasticsearch -p 9200:9200 -p 9300:9300 -e "discovery.type=single-n

【Rust】所有权OwnerShip

什么是所有权 rust使用由编译器检查的一些规则构成的所有权系统来管理内存。且这不会影响程序的运行效率。 所有权规则 rust中每一个每一个值都有一个owner。在同一时刻,只能有一个owner。当这个owner超过范围,则该值会被丢弃。 String类型 为什么需…

kitti数据集转为bag

下载原始的数据集后,通过终端来运行: unzip 2011_10_03_calib.zip和 unzip 2011_10_03_drive_0047_sync.zip这样这个文件夹才算准备好: 然后去下载kitti2bag工具: pip install kitti2bag然后去2011_10_03文件夹下执行&#xf…

photoshop学习笔记——选区3 选区的变化

选区制作完成之后可以对选区进行变化 主要有: 反选:shift ctrl I 变换 修改: 边界 设置选区的边界大小 类似 CSS中的borderSize平滑 对选区的角进行平滑扩展 向外扩展选区收缩 向内收缩选区羽化 让边界变得过渡透明度 设置…

python安装python-bioformats库教程

在python中安装python-bioformats库,可能并不是那么顺利,需要注意一下细节问题。 过程中主要遇到以下报错信息: error: subprocess-exited-with-error python setup.py egg_info did not run successfully.│ exit code: 1╰─> [10 lines of output]Traceback (most rec…

Hello 算法:动画图解、一键运行的数据结构与算法教程

Hello 算法 《Hello 算法》是一份开源、免费的数据结构与算法入门教程,特别适合新手。全书采用动画图解,内容清晰易懂,学习曲线平滑,引导初学者探索数据结构与算法的知识地图。源代码可以一键运行,帮助读者通过练习提…

yolov5-7在opencv里跑自己的onnx模型

先把模型放在如下目录 运行如下代码 import cv2 import numpy as npclass Onnx_clf:def __init__(self, onnx:strdnn_model1/plane02.onnx, img_size640, classlist:list[plane]) -> None: func: 读取onnx模型,并进行目标识别para onnx:模型路径img_size:输出图片大小,和模…

智慧校园班级信息基础数据维护功能概述

在智慧校园的基础平台管理中,班级信息管理为所有的业务模块提供了最小单位的基础数据。它不仅是连接学生、教师与学校管理层的桥梁,更是优化教育资源分配、提升教学质量的催化剂。智慧校园通过融合一系列智能化工具,实现了对班级信息的精细化…

HarmonyOS 质量、测试、上架速浏

1.应用质量要求: 1. 应用体验质量建议: 功能数据完备 功能完备 数据完备 基础体验要求 基础约束 兼容性 稳定性 性能 功耗 安全…

JavaScript(17)——事件监听

什么是事件? 事件是在编程时系统内发生的动作或发生的事情,比如用户在网页上单击一个按钮 什么是事件监听? 就是让程序检测是否有事件产生,一旦有事件触发,就立刻调用一个函数做出响应,也称为绑定事件或…

扫雷小游戏纯后端版

package com.wind;import java.util.Random; import java.util.Scanner;public class ResultLei {static Random random new Random();public static void main(String[] args) {boolean end true;while (end) {System.out.println("请输入你选择的难度对应的数字&#…

MySQL大框架总结

1.DDL,DML,DQL,DCL的区别 (由于DCL是关乎用户的,以下内容重点讲述数据库,表与数据的操作,所以对DCL不详细赘述) DDL DML DQL DCL 中文/英文 数据库定义语言 data definition language 数据库操作语言 data mani…

区块链技术如何重塑医疗健康行业未来?

区块链在医疗领域的应用日益广泛,主要体现在以下几个方面: 一、医疗数据管理 电子病历管理: 区块链技术可以用于构建去中心化的电子病历系统,确保病历数据的不可篡改性和安全性。患者可以通过区块链平台安全地管理自己的电子病历…