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()

 

 

相关内容

热门资讯

保存时出现了1个错误,导致这篇... 当保存文章时出现错误时,可以通过以下步骤解决问题:查看错误信息:查看错误提示信息可以帮助我们了解具体...
汇川伺服电机位置控制模式参数配... 1. 基本控制参数设置 1)设置位置控制模式   2)绝对值位置线性模...
不能访问光猫的的管理页面 光猫是现代家庭宽带网络的重要组成部分,它可以提供高速稳定的网络连接。但是,有时候我们会遇到不能访问光...
表格中数据未显示 当表格中的数据未显示时,可能是由于以下几个原因导致的:HTML代码问题:检查表格的HTML代码是否正...
本地主机上的图像未显示 问题描述:在本地主机上显示图像时,图像未能正常显示。解决方法:以下是一些可能的解决方法,具体取决于问...
不一致的条件格式 要解决不一致的条件格式问题,可以按照以下步骤进行:确定条件格式的规则:首先,需要明确条件格式的规则是...
表格列调整大小出现问题 问题描述:表格列调整大小出现问题,无法正常调整列宽。解决方法:检查表格的布局方式是否正确。确保表格使...
Android|无法访问或保存... 这个问题可能是由于权限设置不正确导致的。您需要在应用程序清单文件中添加以下代码来请求适当的权限:此外...
【NI Multisim 14...   目录 序言 一、工具栏 🍊1.“标准”工具栏 🍊 2.视图工具...
银河麒麟V10SP1高级服务器... 银河麒麟高级服务器操作系统简介: 银河麒麟高级服务器操作系统V10是针对企业级关键业务...