【发布时间】:2019-12-26 16:07:17
【问题描述】:
我想将数据集从 excel 文件导入到 pandas 数据框,然后绘制它。数据集包括日期列 - 应转换为 pd.datetime 和秒表列 - 应转换为格式:HH:MM:SS 或 HH:MM 或 H:MM 取决于数据(小时可能超过 24 小时和格式不应包括日期)。以下是数据中的一些行:
Date Stopwatch1 Stopwatch2 Stopwatch3 Timesum
01.08.2019 00:10:05 19:05 0:45 25:01:00
02.08.2019 00:08:00 23:50 0:30 30:30:00
03.08.2019 00:05:00 00:10 0:40 124:00:00
然后我想在 y 轴上用时间格式 (HH:MM) 的标签和 x 轴上的日期列绘制秒表列。如果我可以指定例如如果 time
我尝试做:
df = pd.read_excel(path, dtype={'Stopwatch1':str, 'Stopwatch2':str, 'Stopwatch3':str})
tmd = pd.to_timedelta(df["Stopwatch1"])
tmd.plot()
绘图正在运行,但 y 轴上的标签是数字。我想将它们更改为时间格式(HH:MM)。
【问题讨论】:
-
该情节适用于我在 pandas 0.24.1 上。你遇到了什么问题?
-
我再试一次它正在工作,但不是以它应该的方式,因为在 y 轴上的标签应该是时间格式 (HH:MM) 我怎样才能将它们设置为这种格式?
-
没有时间增量的转换器:pandas.pydata.org/pandas-docs/stable/reference/api/…。这也是一个 matplotlib 问题,你会想在那个标签中问这个。
-
好的,但是有没有办法写这个转换器呢?它应该包括什么?您的链接无效。
-
对不起,应该是:pandas.pydata.org/pandas-docs/stable/reference/api/…; timedelta 不在列表中
标签: python pandas matplotlib time