MATLAB绘制统计折线图

MATLAB绘制统计折线图MATLAB绘制实验数据折现图  在论文或者文章写作中,经常需要使用图形来表示我们的实验结果。一般来说,这种表示方式比表格更加直观、更加可视化。因此,本文给出一种使用MATLAB处理数据得到折线图的教程。1.待处理数据形式  待处理的数据为迭代次数与SR、time、RC、length、steerNum、steerAngle、validNode这七个指标的走势图。即随着迭代次数的增加,这七个指标的走势情况。并且,实验数据包含一个改进和两个对比,三个数据都保存在txt文件中,如下所示。dealme

大家好,又见面了,我是你们的朋友全栈君。

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中不会失真。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/132519.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 不用go-(xxoo)agent的也有可能是程序员

    不用go-(xxoo)agent的也有可能是程序员记得是去年某个时候,在一个群里问大家是怎么翻(什么)墙的,发现很多人是用go-(xxoo)agent的,而我当时完全没听说过go-agent,因为我已经N多年不翻(什么)墙了,于是,有人就说:“连go-(xxoo)agent都没用过你还是程序员吗?”说实话,我也不希望我是程序员啊!可我真的没用过go-(xxoo)agent啊!想起我一位前同事,工作很多年了,却从来没用过linux!(也不知道他

    2022年7月17日
    21
  • windows10开启ssh_ssh连接windows

    windows10开启ssh_ssh连接windowswindowsssh命令MicrosoftannounceditwasbringinganintegratedOpenSSHclienttoWindowsin2015.They’vefinallydoneit,andanSSHclientishiddeninWindows10’sFallCreatorsUpdate.Youcannow…

    2022年10月21日
    1
  • 安卓system文件夹_system文件丢失

    安卓system文件夹_system文件丢失\system\app这个里面主要存放的是常规下载的应用程序,可以看到都是以APK格式结尾的文件。在这个文件夹下的程序为系统默认的组件,自己安装的软件将不会出现在这里,而是/data/文件夹中\system\app\AlarmClock.apk闹钟\system\app\AlarmClock.odex\system\app\Browser.apk浏览器\system\app\Browser.odex\system\app\Bugreport.apkBug报告\system\app\Bug

    2022年10月15日
    1
  • ora-01007变量不在选择列表中_oracle存储过程变量赋值

    ora-01007变量不在选择列表中_oracle存储过程变量赋值使用oracle数据库过程中,偶尔遇到ORA-01008:并非所有变量都已绑定这个错误,此时应该查检sql中是否有以下情况:1、varsql=string.Format(“select*fromstudenttwheret.name=‘{0}‘andt.address=‘{1}‘”,name);此时编译不会报错,当执行sql时就会报“ORA-01008:并非所有…

    2025年9月29日
    5
  • python基础菜鸟教程_菜鸟课程好还是文都好

    python基础菜鸟教程_菜鸟课程好还是文都好Python菜鸟教程第二十课之初始Django1.Django简介Django是一个开放源代码的Web应用框架,由Python写成。采用了MTV的框架模式,即模型M,视图V和模版T。Django的主要目的是简便、快速的开发数据库驱动的网站。它强调代码复用,多个组件可以很方便的以“插件”形式服务于整个框架,Django有许多功能强大的第三方插件你甚至可以很方便的开发出自己的工具包。这使得Djan…

    2025年10月4日
    3
  • 【C#】 Convert.ToInt16 、Convert.ToInt32、Convert.ToInt64 区别[通俗易懂]

    【C#】 Convert.ToInt16 、Convert.ToInt32、Convert.ToInt64 区别[通俗易懂]   一般写程序是用的都是Convert.ToInt32,为什么呢?1.Convert.ToInt是数据类型转换成int类型2.   有三种方法toint16,toint32,toint64   int16-数值范围:-32768到32767   int32-数值范围:-2,147,483,648到2,147,483,647   int64…

    2022年9月20日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号