我有一个格式为(HH:MM:SS.mmmmmm)的时间戳数组和另一个浮点数数组,每个浮点数对应于时间戳数组中的一个值.

我可以使用Matplotlib在x轴上绘制时间,在y轴上绘制数字吗?

我试图这样做,但不知何故,它只接受浮点array.我怎么才能让它画出时间呢?我需要以任何方式修改格式吗?

推荐答案

您必须首先将时间戳转换为Python datetime对象(使用datetime.strptime).然后使用date2num将日期转换为matplotlib格式.

使用plot_date绘制日期和值:

import matplotlib.pyplot
import matplotlib.dates

from datetime import datetime

x_values = [datetime(2021, 11, 18, 12), datetime(2021, 11, 18, 14), datetime(2021, 11, 18, 16)]
y_values = [1.0, 3.0, 2.0]

dates = matplotlib.dates.date2num(x_values)
matplotlib.pyplot.plot_date(dates, y_values)

enter image description here

Python相关问答推荐

Pandas或pyspark跨越列创建

Python tkinter关闭第一个窗口,同时打开第二个窗口

两极:滚动组,起始指数由不同列设置

自动编码器和极坐标

Pandas使用过滤器映射多列

"如果发生特定错误,返回值

机器人与Pyton Minecraft服务器状态不和

如何使用Tkinter创建两个高度相同的框架(顶部和底部)?

如何在PIL、Python中对图像应用彩色面膜?

Pandas 填充条件是另一列

运行回文查找器代码时发生错误:[类型错误:builtin_index_or_system对象不可订阅]

根据另一列中的nan重置值后重新加权Pandas列

如果值不存在,列表理解返回列表

为什么这个带有List输入的简单numba函数这么慢

切片包括面具的第一个实例在内的眼镜的最佳方法是什么?

如何使用数组的最小条目拆分数组

无法使用DBFS File API路径附加到CSV In Datricks(OSError Errno 95操作不支持)

在pandas中使用group_by,但有条件

Pandas Loc Select 到NaN和值列表

如何在达到end_time时自动将状态字段从1更改为0