MATLAB编程:绘制折线图 以及 画图的一些小技巧

MATLAB编程:绘制折线图 以及 画图的一些小技巧


前言

  本博主使用的MATLAB版本是2020b,这个版本可以使用许多有趣的扩展APP。本节将会对如何在已有数据条件下绘制一幅折线图,非常详尽地一种编程方式,代码风格非常舒服,这种方式也省去自己忘却,剩下百度时间,喜欢的朋友点赞收藏哦!


提示:以下是本篇文章正文内容,下面案例可供参考。

一、介绍

  主要的知识点有两个:
1)如何绘制折线图,其中包括:线形、标记符号、坐标轴设置、网格添加、创建图例;
2)如何灵活地使用 MATLAB 自带的图形编辑器,功能非常强大啊,这里也会附带几个有趣的问题。

下面将分点简要介绍:

  1. 折线图的绘制(这里我们仅绘制一幅图了,大家灵活使用 subplot 进行多幅图像绘制) 步骤:
    (1)创建 X轴、Y轴的数据,并设置每一组数据的 线形 颜色 标记 ;
    (2)创建 X轴、Y轴 的标签以及字号设置 (其中 中文字号不显示 需要取图形编辑器里面进行中设置 将会在第二部分进行教程展示);
    (3)添加 网格 (几个命令 很简单);
    (4)设置 其余坐标区的属性,主要包括: 坐标区域的数据范围、间隔大小以及对应字号设置;
    (5)添加 图例,可以设置具体位置及字号大小。

  2. 灵活地使用 MATLAB 自带的图形编辑器,主要解决这几个小问题:
    (1)如何显示 标签或坐标轴 的中文字号;
    (2)如何直接添加 具体点的坐标 这里将展示一个 巨大的、非常实用的 工具-生成代码
    (3) 以后遇到问题 再继续补充吧!

二、MATLAB实现

  1. 示例1:折线图的绘制
    给出的简单示例 X5为 含有6个数据的行向量 YMatrix5 含有三行六列的矩阵 ,目的就是 绘制一幅折线图,具体看代码 每一步都有非常详细的注释!
clc
clear

% 粒子位移
X5 = [1 2 3 4 5 6];
YMatrix5 = [[0.0418 0.0478 0.052 0.0561 0.0617 0.0706]
    [0.0444 0.0527 0.0664 0.0803 0.0852 0.0962]
    [0.0291 0.045 0.056 0.0718 0.0923 0.1085]];

figure1 = figure('WindowState','maximized');

% 粒子位移
% 创建 subplot
subplot1 = subplot(3,2,1,'Parent',figure1)
plot1 = plot(X5,YMatrix5,'Parent',subplot1,'LineWidth',1.2);
set(plot1(1),'DisplayName','   WIDIM','LineStyle','-.','Color',[0 0 1]);
set(plot1(2),'DisplayName','   Hybrid','Marker','o','Color',[0 1 0]);
set(plot1(3),'DisplayName','   RAFT','Marker','*','Color',[1 0 0]);

% 创建 xlabel ylabel
xlabel('粒子位移(pixel)');
ylabel('AEE (pixel)','FontName','Times New Roman');

% 添加网格
box(subplot1,'on');
grid(subplot1,'on');
hold(subplot1,'off');

% 设置其余坐标区属性
axis([1,6,0,0.15]);
set(gca,'XTick',[1:1:6]);
set(gca,'YTick',[0:0.05:0.15]);
set(subplot1,'FontName','Times New Roman','FontSize',16,'XTick',...
    [1 2 3 4 5 6],'YTick',[0 0.05 0.10 0.15]);

% 创建 legend
legend1 = legend(subplot1,'show');
set(legend1,...
    'Position',[0.65 0.75 0.1 0.1],...
    'FontSize',18);

  
中间结果预览:
在这里插入图片描述

  
2. 示例2:灵活地使用 MATLAB 自带的图形编辑器 - 显示中文字体
由上图可知 中文字号 不显示 会出现 令人生气的 框框 需要进行如下操作:

1) 打开 编辑 中的 坐标区属性

在这里插入图片描述

2) 之后 图像的各部分便可以进行编辑 选中X轴标签 右击 选择字号 之后选择宋体字号 即可!

在这里插入图片描述

3)修改后的 结果 就 OK了! 可以将图像保存为 fig 格式文件 方便后续使用。

在这里插入图片描述

  
3. 示例3:灵活地使用 MATLAB 自带的图形编辑器 - 标记点坐标
至于 每个标点处的坐标 直接在进行第一步后 点击需要标记的点 即可!可以拖动坐标框,不过并不推荐这种方法,
可以直接将图片保存为 tif 或 bmp 格式,之后用 画图工具添加 即可。

在这里插入图片描述
这是 标记后的结果:
在这里插入图片描述

  
最后附带一下一个非常强大的工具 自己领会啊!
灵活地使用文件下的生成代码 会有意外的惊喜哦!
在这里插入图片描述

三、总结

  本篇主要是MATLAB中折线图的绘制方面的一些基本知识以及图像窗口的应用,这次笔记有些长不过还是很实用的,大部分也是自己总结出来的,喜欢的朋友点赞收藏哦,😄!

  • 21
    点赞
  • 77
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
### 回答1: MATLAB可以使用plot函数绘制密集折线图。密集折线图是指在坐标轴上绘制大量的线条,通常用于显示时间序列或者连续数据的变化趋势。 以下是一个简单的MATLAB绘制密集折线图的源码示例: ``` % 生成随机数据 n = 100; % 数据个数 x = 1:n; % x轴数据 y = randn(1, n); % y轴随机数据 % 绘制密集折线图 plot(x, y, 'Color', [0.5, 0.5, 0.5], 'LineWidth', 0.5) % 设置坐标轴标题 xlabel('X轴') ylabel('Y轴') % 设置图形标题 title('密集折线图示例') % 设置坐标轴范围 xlim([min(x), max(x)]) ylim([min(y), max(y)]) % 设置坐标轴刻度样式 set(gca, 'TickDir', 'out') % 隐藏坐标轴上的刻度线 set(gca, 'Xtick', [], 'Ytick', []) % 添加网格线 grid on ``` 以上示例代码中,首先生成了100个随机数据,然后使用plot函数绘制了密集折线图。其中,'Color'参数设置线条颜色为灰色,'LineWidth'参数设置线条宽度为0.5。接着使用xlabel和ylabel函数设置坐标轴标题,使用title函数设置图形标题。通过设置xlim和ylim函数可以调整坐标轴范围。使用set函数可以调整坐标轴刻度样式和隐藏刻度线。最后,通过调用grid on函数添加网格线。 可以根据需要修改以上源码中的参数和样式,以获得符合自己要求的密集折线图。 ### 回答2: Matlab 绘制密集折线图的源码可以参考以下示例: ``` % 创建示例数据 x = linspace(0, 10, 100); % x轴数据 y = sin(x); % y轴数据 % 绘制密集折线图 figure; % 创建新的图形窗口 p = plot(x, y); % 绘制折线图 p.LineWidth = 2; % 设置线条宽度 p.Marker = 'o'; % 设置数据的标记形状 p.MarkerSize = 6; % 设置数据的大小 p.MarkerFaceColor = 'red'; % 设置数据的填充色 % 设置坐标轴标签和标题 xlabel('x'); ylabel('y'); title('密集折线图'); % 设置图例 legend('sin(x)', 'Location', 'northwest'); % 设置坐标轴范围 xlim([0, 10]); ylim([-1, 1]); % 添加网格线 grid on; % 保存图像为PNG格式 saveas(gcf, '密集折线图.png'); ``` 上述源码首先创建了一个示例数据,然后绘制了一个密集折线图,通过设置线条宽度、数据标记等属性来美化图形,同时也设置了坐标轴标签、标题、图例、坐标轴范围,并添加了网格线。最后,将图像保存为PNG格式文件。 注意:以上源码仅为示例,实际使用时可以根据需要进行修改和调整。 ### 回答3: Matlab绘制密集折线图的源码如下: ``` % 创建一个figure窗口 figure; % 生成数据 x = linspace(0, 10, 100); % 生成100个从0到10的等间隔数据 y1 = sin(x); % 计算y1值 y2 = cos(x); % 计算y2值 % 绘制密集折线图 plot(x, y1, 'r-', 'LineWidth', 1.5); % 绘制红色线条的y1 hold on; % 保持当前图形添加图形 plot(x, y2, 'b--', 'LineWidth', 1.5); % 绘制蓝色虚线的y2 % 添加标题和图例 title('密集折线图'); % 添加标题 legend('y1 = sin(x)', 'y2 = cos(x)'); % 添加图例 % 设置坐标轴标签 xlabel('x'); % 设置x轴标签 ylabel('y'); % 设置y轴标签 % 设置坐标轴范围 xlim([0, 10]); % 设置x轴范围为0到10 ylim([-1, 1]); % 设置y轴范围为-1到1 % 设置背景颜色 set(gca, 'Color', [0.9, 0.9, 0.9]); % 设置图像背景颜色为浅灰色 % 显示图形 grid on; % 打开网格线 box on; % 打开坐标轴边框 ```
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值