当前位置: 首页 > news >正文

Matplotlib中strpdate2num()函数报错的解决方法

在Matplotlib绘图时,有时会从文件中读取形如“2025/2/20”格式的日期数据,在读取了日期数据后,会通过Matplotlib.dates.strpdate2num()函数将日期格式变为浮点数进行绘制。

1 matplotlib.dates不再支持strpdate2num()函数

使用matplotlib.dates.strpdate2num()函数处理日期数据的代码如图1所示。

图1 使用matplotlib.dates.strpdate2num()函数处理日期数据的代码

运行以上代码后,程序报错信息如图2所示。

图2 程序报错信息

报错信息为“matplotlib.dates”模块不包含strpdate2num()函数。

2 解决方法

使用“matplotlib.dates”模块中的data2num()函数进行转换,由于该函数的参数是datetime.datetime类型,因此首先要将“2025/2/20”格式的日期数据转换为datetime.datetime类型。

2.1 将日期字符串转换为datetime.datetime类型

使用图3所示代码,可以将日期字符串转换为datetime.datetime类型。

图3 日期字符串转换为datetime.datetime类型的代码

datetime.datetime.strptime()函数的第一个参数表示要转换的日期字符串,第二个参数表示日期的格式,%Y表示年,%m表示月份,%d表示日。该函数的返回值是datetime.datetime类型,保存在变量date1中。、

注意1 导入模块的代码如图4所示。

图4 导入模块的代码

2.2 将datetime.datetime类型转换为浮点型

通过“matplotlib.dates”模块中的data2num()函数将datetime.datetime类型转换为浮点型的代码如图5所示。

图5 将datetime.datetime类型转换为浮点型的代码

data2num()函数的参数是图3得到的datetime.datetime类型的日期,返回值是该日期距离1970-01-01 00:00:00的天数。

相关文章:

  • 数字识别系统设计与实现
  • go~为什么会有json.Number这种类型存在
  • 大气体育直播模板赛事扁平自适应模板源码
  • 全面收集中间件Exporter适配:从Redis到ActiveMQ,掌握监控数据采集的最佳实践
  • Django加bootstrap实现上传文件含有进度条
  • 与本地电脑PDF文档对话的PDF问答程序
  • 设备唯一ID获取,支持安卓/iOS/鸿蒙Next(uni-device-id)UTS插件
  • 【ROS2】【ROS2】RViz2源码分析(八):Display中订阅ROS2消息(使用Qt信号和槽传递ROS2消息)
  • Python递归函数
  • 设计模式教程:责任链模式(Chain of Responsibility Pattern)
  • 基于cppzmq和MsgPack封装的Publisher Subscriber - 发布订阅模式
  • 如何组织和管理JavaScript文件:最佳实践与策略
  • MATLAB进阶之路:数据导入与处理
  • Java File 类
  • rman 备份恢复1
  • spring日志
  • OmniParser V2 和 OmniTool 让 AI 来控制 Windows 设备
  • c语言基础第12节《函数的调用》
  • 怎么用cURL库对接智能语音播报设备
  • ShenNiusModularity项目源码学习(10:ShenNius.FileManagement项目分析)
  • 耿军强任陕西延安市领导,此前任陕西省公安厅机场公安局局长
  • 马上评丨规范隐藏式车门把手,重申安全高于酷炫
  • 央行:货币与物价的关系受多重因素影响,提振物价的关键在于扩大有效需求
  • “上海之帆”巡展在日本大阪开幕,松江区组织企业集体出展
  • 公示!17个新职业、42个新工种亮相
  • 第1现场 | 印巴冲突:印50多年来首次举行大规模民防演习