MATLAB绘制实验数据折现图

  在论文或者文章写作中,经常需要使用图形来表示我们的实验结果。一般来说,这种表示方式比表格更加直观、更加可视化。因此,本文给出一种使用MATLAB处理数据得到折线图的教程。

1. 待处理数据形式

  待处理的数据为迭代次数与SR、time、RC、length、steerNum、steerAngle、validNode这七个指标的走势图。即随着迭代次数的增加,这七个指标的走势情况。 并且,实验数据包含一个改进和两个对比,三个数据都保存在txt文件中,如下所示。

  • dealmeans-RRTstar.txt

iteration SR time RC lengthsteerNum steerAngle validNode
150 0 nan nan nan nan nan nan
300 0 nan nan nan nan nan nan
500 0 nan nan nan nan nan nan
1000 0.142857 0.291912 0.0962069 344.143 46.8571 816.639 383.286
1500 0.469388 0.831647 0.107638 347.348 47.6957 923.343 607.478
2000 0.693878 0.726488 0.100066 345.912 46.8235 842.842 753.235
2500 0.816327 0.826433 0.104683 348.025 46.8 883.326 953.75
3000 0.877551 1.11224 0.108346 352.163 47.9535 934.25 1100.91
3500 0.877551 1.61856 0.104273 347.256 47.4884 889.123 1299.21

  • dealmeans-BRRTstar.txt

iteration SR time RC lengthsteerNum steerAngle validNode
150 0 nan nan nan nan nan nan
300 0 nan nan nan nan nan nan
500 0.0816327 0.108026 0.113985 336.5 48 977.567 229
1000 0.673469 0.306055 0.118107 346.394 49.3636 1049.82 426
1500 1 0.617184 0.112612 343.204 48.8571 991.233 601.694
2000 1 1.2277 0.112168 340.429 47.9184 968.744 773.102
2500 1 1.82997 0.113759 337.306 47.1429 966.036 934.673
3000 1 2.46895 0.111037 334.633 47.2041 944.087 1113.04
3500 1 3.27609 0.112627 333.735 46.9592 951.161 1315.67

  • dealmeans-BV-RRTstar.txt

iteration SR time RC lengthsteerNum steerAngle validNode
150 1 0.0715696 0.155344 332.959 23.3469 653.243 140.98
300 1 0.181333 0.15514 333.612 25.449 710.931 234.49
500 1 0.377778 0.149981 333.367 26.4694 714.981 344.408
1000 1 1.16517 0.149679 331.408 28.3061 763.375 611.265
1500 1 2.62397 0.143125 328.735 28.9796 746.574 859.041
2000 1 4.57071 0.140159 325.878 29.6327 746.221 1123.14
2500 1 6.14498 0.132265 324.245 30.6531 728.807 1370.67
3000 1 8.19425 0.12972 322.449 30.8776 721.298 1626.59
3500 1 10.9185 0.124152 320.714 30.8163 689.744 1864.41

2. 绘制折线图的MATLAB代码

  绘制图形的代码流程为:读取文件,绘制图形,设置xy坐标轴和图例。

close all;
clc;
%只是第一行有字符,则使用importdata可直接读取数据
data1=importdata('D:\大论文试验\实验图片\第四章\补充密集障碍物地图中的实验\dealmeans-RRTstar.txt');
data11=data1.data; %若没有这一步,出不出来图。
data2=importdata('D:\大论文试验\实验图片\第四章\补充密集障碍物地图中的实验\dealmeans-BRRTstar.txt');
data21=data2.data; %若没有这一步,出不出来图。
data4=importdata('D:\大论文试验\实验图片\第四章\补充密集障碍物地图中的实验\dealmeans-BV-RRTstar.txt');
data41=data4.data; %若没有这一步,出不出来图。
x=data11(:,1);
y11=data11(:,2);
y12=data11(:,3);
y13=data11(:,4);
y14=data11(:,5);
y15=data11(:,6);
y16=data11(:,7);
y17=data11(:,8);y21=data21(:,2);
y22=data21(:,3);
y23=data21(:,4);
y24=data21(:,5);
y25=data21(:,6);
y26=data21(:,7);
y27=data21(:,8);y41=data41(:,2);
y42=data41(:,3);
y43=data41(:,4);
y44=data41(:,5);
y45=data41(:,6);
y46=data41(:,7);
y47=data41(:,8);
figure(1); %路径长度曲线
%plot(x,y14,'-bo',x,y24,'-rp',x,y44,'-cs',x,y34,'-g*');
plot(x,y14,'-bo',x,y24,'-rp',x,y44,'-g*','LineWidth',1.2); %在figure(1)中绘制三条曲线,设置折现颜色,粗细
title('迭代次数与路径长度');
xlabel('iteration');
ylabel('Path Length');
lgd1=legend('RRT*','Bi-RRT*','BV-RRT*'); %设置图例
%set(lgd1,'Location','BestOutside');
set(lgd1,'FontName','Times New Roman','FontSize',8) %设置图例的字体
lgd1.ItemTokenSize = [20,20];%设置图例尺寸
figure(2); %执行时间,包括runtime
plot(x,y12,'-bo',x,y22,'-rp',x,y42,'-g*','LineWidth',1.2);
title('迭代次数与执行时间');
xlabel('iteration');
ylabel('time(s)');
lgd2=legend('RRT*','Bi-RRT*','BV-RRT*');
%set(lgd2,'Location','BestOutside');
set(lgd2,'FontName','Times New Roman','FontSize',8)
lgd2.ItemTokenSize = [20,20];
figure(3); %成功率SR
plot(x,y11,'-bo',x,y21,'-rp',x,y41,'-g*','LineWidth',1.2);
title('迭代次数与成功率');
xlabel('iteration');
ylabel('SR');
lgd3=legend('RRT*','Bi-RRT*','BV-RRT*');
%set(lgd3,'Location','BestOutside');
set(lgd3,'FontName','Times New Roman','FontSize',8)
lgd3.ItemTokenSize = [20,20];
figure(4); %有效节点数
plot(x,y17,'-bo',x,y27,'-rp',x,y47,'-g*','LineWidth',1.2);
title('迭代次数与有效节点数');
xlabel('iteration');
ylabel('有效节点数');
lgd4=legend('RRT*','Bi-RRT*','BV-RRT*');
set(lgd4,'Location','BestOutside');
set(lgd4,'FontName','Times New Roman','FontSize',8)
lgd4.ItemTokenSize = [20,20];
figure(5); %转弯次数,转弯角度,路径异常值
subplot(2,2,1); %转弯角度
plot(x,y16,'-bo',x,y26,'-rp',x,y46,'-g*','LineWidth',1.2);
title('迭代次数与路径总转向角度');
xlabel('iteration');
ylabel('路径总转向角度');
subplot(2,2,2); %转弯次数
plot(x,y15,'-bo',x,y25,'-rp',x,y45,'-g*','LineWidth',1.2);
title('迭代次数与路径转弯次数');
xlabel('iteration');
ylabel('路径总转弯次数');
subplot(2,2,3); %路径异常值
plot(x,y13,'-bo',x,y23,'-rp',x,y43,'-g*','LineWidth',1.2);
title('迭代次数与路径异常值');
xlabel('iteration');
ylabel('RC');
legend('RRT*','Bi-RRT*','BV-RRT*');

3. 结果图展示





4 总结

  本文使用MATLAB绘制折线图适合对数据进行可视化处理。使用MATLAB绘制的图片还有一个好处是可以保存为.emf格式,这样插入word中不会失真。

MATLAB绘制统计折线图相关推荐

  1. Python根据csv绘制多折线图(内含批量读取+自定义坐标标签+阴影处理)

    实现功能 1.从csv中读取数据 2.数据清洗(大小超出范围的异常值处理) 3.数据累积处理(将每日数据处理为历史累积值) 4.绘制多折线图 0.导入相关包import os import panda ...

  2. python画折线图显示点值-Python 绘制可视化折线图

    1. 用 Numpy ndarray 作为数据传入 ply import numpy as np import matplotlib as mpl import matplotlib.pyplot a ...

  3. python画折线图代码-python绘制简单折线图代码示例

    1.画最简单的直线图 代码如下: import numpy as np import matplotlib.pyplot as plt x=[0,1] y=[0,1] plt.figure() plt ...

  4. python画折线图详解-python绘制简单折线图代码示例

    1.画最简单的直线图 代码如下: import numpy as np import matplotlib.pyplot as plt x=[0,1] y=[0,1] plt.figure() plt ...

  5. matplotlib 折线图_漂亮图表也可信手拈来,一文学会用Python绘制堆积折线图

    今天咱们还是接着上次的话题,继续和大家聊聊关于Python绘图相关的东东哦,上次已经和大家讨论完了如何给自己所绘制的图表中添加装饰线以及修改装饰线密度的方法,今天呢,咱们再聊点的新的东东哦,还是和大家 ...

  6. matlab绘制星下点轨迹,MATLAB绘制GPS星下点轨迹图

    MATLAB绘制GPS星下点轨迹图 轨迹计算部分参考链接: https://wenku.baidu.com/view/45bd098d4a7302768e9939cf.html 本文对上述matlab ...

  7. python绘制折线图显示数据_漂亮图表也可用python信手拈来!一文教你学会用Python绘制堆积折线图...

    今天,和大家聊聊关于Python绘图相关的东东哦,还是和大家继续深耕Python经典的matplotlib库哦! 好啦,咱们就开始吧! 首先,咱们聊聊如何在Python中去绘制经典的堆积折线图 到这可 ...

  8. 中绘制折线_漂亮图表也可信手拈来,一文学会用Python绘制堆积折线图

    今天咱们还是接着上次的话题,继续和大家聊聊关于Python绘图相关的东东哦,上次已经和大家讨论完了如何给自己所绘制的图表中添加装饰线以及修改装饰线密度的方法,今天呢,咱们再聊点的新的东东哦,还是和大家 ...

  9. python画折线图代码实现_python如何绘制分布折线图 python绘制分布折线图代码示例...

    python如何绘制分布折线图?本篇文章小编给大家分享一下python绘制分布折线图代码示例,文章代码介绍的很详细,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看. 用Pyth ...

  10. Python案例:获取天气信息并绘制气温折线图

    文章目录 一.解决思路 (一)通过城市名获取城市代码 1.查询格式 2.查询示例 (二)通过城市代码获取天气数据 1.查询格式 2.查询示例 二.编写程序完成查询任务 (一)通过城市名获取城市代码 ( ...

最新文章

  1. wmp流代理服务器设置为空,wmp服务器运行失败
  2. TCL发布7项AI合作项目,聘任蒋涛为技术顾问
  3. ATPG Practice ATPG Practice II
  4. 深入理解 Session 与 Cookie
  5. 九九乘法表代码口述_利用随机函数实现座次表的随机排座
  6. simpledateformat线程不安全_ArrayList为什么线程不安全?
  7. OrCAD Capture使用记录
  8. 快速排序(java版)
  9. 小程序啦啦外卖、码科跑腿、云贝外卖各种问题汇总解决对策
  10. Java疯狂讲义读书笔记第五章
  11. LeetCode题目Java代码解答 (详细解释!!!)
  12. 知网论文CAJ格式免费转换成PDF,你学会了吗
  13. 关于计算机职业发展方向,计算机专业的职业发展方向有哪些
  14. [1160]C语言实验——某年某月的天数
  15. 2018-1-27工作周总结
  16. openCV 需要显示的图片太大超出了屏幕范围
  17. 帝国cms系统7.5 文档word
  18. Java 敏感词过滤,Java 敏感词替换,Java 敏感词工具类
  19. A计划:基础架构软件创业之道分享实录
  20. 2014下半年成长总结

热门文章

  1. 领域驱动设计核心概念
  2. 领域驱动设计(DDD)入门概要
  3. cmd命令 查询硬盘序列号,设备序列号,MAC地址,操作系统及安装时间,以及与AIDA64软件的对比
  4. 2021年5月系统集成项目管理工程师案例分析真题讲解(2)
  5. WIN10 企业版 LTSC 激活
  6. 锂电池保护板测试软件,锂电池保护板的简单检测方法
  7. java子网掩码计算器_java 子网掩码计算
  8. 最新地形测量全套实习任务指导
  9. Sandwell模型和卫星测高反演海底地形
  10. 树莓派4b自带wifi_树莓派4B wifi开机启动