AI算法(三)plt基础
创始人
2024-05-16 16:09:59
0次

目录

一、前言

二、各类图

        2.1、折线图

        2.2、散点图

         2.3、点线图

        2.4、下三角线

        2.5、点虚线

        2.6、虚点线

        2.7、绘制自己的学习曲线

 三、多线

 四、画布

 五、直方图


一、前言

        plt是深度学习的常用库之一,很多指标结果如AUC、F1、ROC等都是通过plt来实现。本篇文章主要记录plt的一些常见用法。


二、各类图

        2.1、折线图

plt.plot([1, 2, 3, 4], [2, 4, 6, 8])  # 折线
plt.show()

 横坐标为第一个列表,纵坐标为第二个列表

        2.2、散点图

plt.plot([1, 2, 3, 4], [2, 4, 6, 8], 'o')  # 散点
plt.show()

         2.3、点线图

plt.plot([1, 2, 3, 4], [2, 4, 6, 8], 'o-')  # 点线
plt.show()

 

         

        2.4、下三角线

plt.plot([1, 2, 3, 4], [2, 4, 6, 8], 'v-')  # 下三角线
plt.show()

 

 

        2.5、点虚线

plt.plot([1, 2, 3, 4], [2, 4, 6, 8], 'o--')  # 点虚线
plt.show()

 

 

        2.6、虚点线

plt.plot([1, 2, 3, 4], [2, 4, 6, 8], 'o-.')  # 虚点线
plt.show()

 

         

        2.7、绘制自己的学习曲线

        plt的横坐标和纵坐标都是由列表组成,我们可以通过函数对应将目标数字放入到列表中,如下代码所示

import matplotlib.pyplot as plt
time = [4*60+42, 5*60+26, 4*60+6, 1*60+58, 0, 0, 3*60+53, 1*60+59, 6*60+46, 7*60+37, 5*60+43, 2*60+31, 5*60+3, 5*60+43, 1*60+11, 8*60+5, 3*60+38, 5*60+47, 4*60+8, 6*60+9, 7*60+33, 1*60+21, 1*60+55, 3*60+58, 3*60+10, 4*60+38, 3*60+43, 1*60+34, 5*60, 4*60+37]
data = [12.25, 12.26, 12.27, 12.28, 12.29, 12.30, 12.31]
for x in range(1, 24):y = '1.'+str(x)print(y)data.append(y)
plt.plot(data, time)  # 折线图
plt.show()


 三、多线

 

        当我们在做实验时常常需要多种实验进行对比,那如何用plt实现多条线展示在同一个图上呢?

plt.plot([1, 2, 3, 4], [2, 4, 6, 8], 'o-.r', label='Line A')  # 虚点线 红
plt.plot([1, 2, 3, 4], [2, 7, 8, 14], color='blue', marker='o', label='Line B')  # 两条线
plt.title("Matplotlib Test Plot")  # 标题
plt.xlabel("Xlabel")  # x轴
plt.ylabel("Ylabel")  # y轴
# plt.xlim(0, 5)  # x轴范围
# plt.ylim(0, 5)  # y轴范围
# plt.xticks(np.arange(0, 11, 2))  # 步长
plt.legend()  # 显示线条
plt.show()

 


 四、画布

fig = plt.figure()  # 创建画布
ax1 = fig.add_subplot(2, 2, 1)  # 画布分为2行2列 这个plt占第一个单元格
ax2 = fig.add_subplot(2, 2, 2)  # 第二个单元格
plt.show()


 五、直方图

data = [32, 48, 21, 100]  # y
labels = ['Jan', 'Feb', 'Mar', 'Apr']  # x
# plt.bar([0, 1, 2, 4], [5, 6, 7, 8])  # 前者是位置,后者是y 直方图
plt.bar(np.arange(len(data)), data)  # 横坐标填充
plt.xticks(np.arange(len(data)), labels)  # 步长 转换为月份
plt.show()

 

 

相关内容

热门资讯

前端-session、jwt 目录:   (1)session (2&#x...
linux入门---制作进度条 了解缓冲区 我们首先来看看下面的操作: 我们首先创建了一个文件并在这个文件里面添加了...
关于测试,我发现了哪些新大陆 关于测试 平常也只是听说过一些关于测试的术语,但并没有使用过测试工具。偶然看到编程老师...
前缀和与对数器与二分法 1. 前缀和 假设有一个数组,我们想大量频繁的去访问L到R这个区间的和,...
nodejs:本地安装nvm实... 一、背景-使用不同版本node的原因 vue3+ts、nuxt3版本,node...
JAVA集合知识整理 Java集合知识整理 HashMap相关 HashMap的底层数据结构:jdk1.8之...
无刷直流电机介绍及单片机控制实... 无刷直流电机介绍及单片机控制实例前言基本概念优势与劣势使用寿命基本结构使用单片机控制实例电子调速器&...
fwdiary(2) dp2 1.传纸条  AcWing 275. 传纸条 - AcWing 走两条路,走一条最大的...
常用的DOS命令 常用的DOS命令 DOS(Disk Operating System,磁...
<C++> 类和对象(下) 1.const成员函数将const修饰的“成员函数”称之为const成员函数,cons...