当前位置: 首页 > 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项目分析)
  • 中国专家组赴缅开展地震灾害评估工作
  • 中国工程院院士、歼八Ⅱ飞机系统工程副总设计师温俊峰逝世
  • 上海体育消费节将从5月持续至11月,推出运动装备商品促销活动
  • 主刀完成3万余例手术,81岁神经外科学专家徐启武逝世
  • 商务部:一季度社零总额12.47万亿元,同比增长4.6%
  • 神舟十九号航天员乘组计划于4月29日返回东风着陆场