性能对比实验折线图绘制代码(YOLO系列为例)
本文用于绘制性能折线图,适用于对比实验,发现很多博文都是收费,欺负哥们懒得学习,一气之下ai了一下再进行代码修改,免费供给大家学习参考,便于大家撰写论文数据时利于绘制图像。
import pandas as pd
import matplotlib.pyplot as plt # 读取CSV文件,替换成自己的绝对路径
datav12_cdm = pd.read_csv('/mnt/user/qianzhu/YOLO/v12/yolov12-main/results/v12n-cdm/results.csv')
datav12n = pd.read_csv('/mnt/user/qianzhu/YOLO/v12/yolov12-main/results/v12n/results.csv')
datav11n = pd.read_csv('/mnt/user/qianzhu/YOLO/v12/yolov12-main/results/v11n/results.csv')
datav10n = pd.read_csv('/mnt/user/qianzhu/YOLO/v12/yolov12-main/results/v10n/results.csv')
datav8n = pd.read_csv('/mnt/user/qianzhu/YOLO/v12/yolov12-main/results/v8n/results.csv')
datav6n = pd.read_csv('/mnt/user/qianzhu/YOLO/v12/yolov12-main/results/v6n/results.csv') # 单独获取每个模型的metrics/mAP50-95(B)列的数据
v12_cdm = datav12_cdm['metrics/mAP50-95(B)']
v12 = datav12n['metrics/mAP50-95(B)']
v11 = datav11n['metrics/mAP50-95(B)']
v10 = datav10n['metrics/mAP50-95(B)']
v8 = datav8n['metrics/mAP50-95(B)']
v6 = datav6n['metrics/mAP50-95(B)'] # 获取epochs列的数据,并从第20个数据开始取值每隔20个epochs取一次;训练的mAP50-95(B也是同理
epochs = datav12_cdm['epoch'][19::20]
v12cdmd = v12_cdm[19::20]
v12d = v12[19::20]
v11d = v11[19::20]
v10d = v10[19::20]
v8d = v8[19::20]
v6d = v6[19::20] # 绘制折线图,如果需要改动自己去查一下这个plt.plot函数中的参数怎么设置
plt.plot(epochs, v12cdmd, label='YOLOv12n-CDM(our)', marker='o',color='c')
plt.plot(epochs, v12d, label='YOLOv12n', color='green',linestyle='--',alpha=0.8)
plt.plot(epochs, v11d, label='YOLOv11n', color='blue',linestyle='--',alpha=0.8)
plt.plot(epochs, v10d, label='YOLOv10n',color='black',linestyle='--',alpha=0.8)
plt.plot(epochs, v8d, label='YOLOv8n',color='yellow',linestyle='--',alpha=0.8)
plt.plot(epochs, v6d, label='YOLOv6n', color='red',linestyle='--',alpha=0.8) #设置图标题,x坐标名字,y坐标名字
plt.title('Object Detection')
plt.xlabel('epochs')
plt.ylabel('map50-95(B)') # 添加图例,在右下角,默认在左上角
plt.legend(loc='lower right') # 设置网格线
plt.grid(True) # 保存图像到同目录下,换成自己要保存的名字,也可以使用绝对路径进行存储
plt.savefig('20.png')
最终效果:

性能对比实验折线图绘制代码(YOLO系列为例)的更多相关文章
- qt外部数据传入实现动态的折线图绘制
在嵌入式开发中,实现数据收集与显示很常见,对于希望数据稳定的应用来说, 折现图的表现形式很符合条件. 本实现是通过qt的signal-slot来 ...
- Python_散点图与折线图绘制
在数据分析的过程中,经常需要将数据可视化,目前常使用的:散点图 折线图 需要import的外部包 一个是绘图 一个是字体导入 import matplotlib.pyplot as plt fro ...
- 使用achartengine实现自定义折线图 ----附代码 调试OK
achartengine作为android开发中最常用的实现图标的开源框架,使用比较方便,参考官方文档谢了如下Demo,实现了自定义折线图. package edu.ustb.chart; impor ...
- [Python Study Notes]折线图绘制
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' ...
- JAVA Swing使用JFreeChart实现折线图绘制
效果如下: 实现步骤: 1.导入JAR包 jfreechart官网下载的zip文件中包含这两个jar包 2.代码编写 import org.jfree.chart.ChartFactory; impo ...
- OpenGL——折线图柱状图饼图绘制
折线图绘制代码: #include<iostream> //旧版本 固定管线 #include<Windows.h> #include <GL/glut.h> // ...
- 利用python进行折线图,直方图和饼图的绘制
我用10个国家某年的GDP来绘图,数据如下: labels = ['USA', 'China', 'India', 'Japan', 'Germany', 'Russia', 'Brazil', ...
- php中用GD绘制折线图
php中用GD绘制折线图,代码如下: Class Chart{ private $image; // 定义图像 private $title; // 定义标题 private $ydata; // 定 ...
- html5绘制折线图
html5绘制折线图详细代码 <html> <canvas id="a_canvas" width="1000" height="7 ...
- Python绘制折线图
一.Python绘制折线图 1.1.Python绘制折线图对应代码如下图所示 import matplotlib.pyplot as pltimport numpy as np from pylab ...
随机推荐
- Anaconda功能、优点、安装步骤(安装视频)
目录 介绍 功能(包和环境的管理器) 优点(省时省心) 下载地址 安装教程 要点 conda 的常见命令 查询完整帮助文件 管理conda和anaconda 管理环境 包管理 其他 介绍 Anac ...
- 第36次ccf-csp题解(思维)
比赛链接 https://sim.csp.thusaac.com/contest/36/home 比赛感受 这会刚打完上海icpc,比起区域赛的题,这个简单太多了. 感受还不错,写的很顺手.除了第 ...
- 关于Java的UUID
UUID或者UNID或者UID,是一个统一唯一标识,可以用来标记文档.数据或其它需要唯一标识的东西.Java 5.0内置UUID的实现,见java.util.UUID. 下面代码是找到的2种实现方式, ...
- Qt编写安防视频监控系统67-跨平台及国产系统
一.前言 得益于Qt的超强跨平台特性,本系统也是跨平台的,亲测的系统包括windows全系列.ubuntu全系列.centeos.国产系统UOS.国产系统银河麒麟.中标麒麟.嵌入式linux.树莓派. ...
- Qt自定义控件集成到全平台QtCreator效果图
- vue3 路由-导航守卫
假设用户登录,在地址栏输入了Login,人性化的设计应该自动回到home页面.或者用户输入不存在路由,也应该回到home页面. 这个时候需要用到vue-router的导航守卫功能. 在我们封装的rou ...
- Java集合容器面试题
Java常用集合类有哪些?Collection接口的子接口包括:Set接口和List接口Map接口的实现类主要有:HashMap.TreeMap.Hashtable.ConcurrentHashMap ...
- DCT实现水印嵌入与提取(带攻击)
问题: 想要用DCT技术,在Matlib上实现水印的隐藏和提取(带GUI界面),且加上一些攻击(噪声.旋转.裁剪),以及用NC值评判! 流程 选择载体 [filename,pathname]=uige ...
- 开发者新选择:用DeepSeek实现Cursor级智能编程的免费方案
前言 去年下半年 cursor 非常火,让很多一行代码都不懂的小白,也可以做自己的网站和搭 App,当时一下子就引爆了独立开发的热潮. 不过每月20dollar的价格也不算便宜,这时候可以使用 cli ...
- 从找朋友到找变位词:一道趣味字符串问题的深入解析|LeetCode 438 找到字符串中所有字母异位词
LeetCode 438 找到字符串中所有字母异位词 点此看全部题解 LeetCode必刷100题:一份来自面试官的算法地图(题解持续更新中) 生活中的算法 还记得小时候玩的"找朋友&quo ...