我有一个datetime.date列表和一个datetime.time值列表。我希望x轴上的日期和y轴上的时间。
x = [datetime.date(2018, 1, 15), datetime.date(2018, 1, 16), datetime.date(2018, 1, 17)]
y = [datetime.time(18, 15), datetime.time(17, 15), datetime.time(17, 47)]
当我尝试在y轴上绘制时间并在x上绘制日期时,我得到一个numpy错误:
" TypeError:float()参数必须是字符串或数字"
为了解决这个问题,我将两个值都转换为日期时间,在时间上添加任意日期,在日期中添加零时间:
x_new = [datetime.datetime.combine(d, datetime.datetime.min.time()) for d in x]
y_new = [datetime.datetime.combine(datetime.datetime.now().date(), t) for t in y]
那很好,但是当我绘制这个时,我的y轴显示没有分钟或秒,而是格式为'dd HH:MM'
,例如:' 01 17:16'如果我今天画。如果我放大,我可以看到分钟和秒,但这并不好。我只希望小时,分钟,秒钟显示,没有约会。
我希望使用plot_date选项而不仅仅是绘图,我可能会找到我需要的东西,但这对我没有帮助。
我希望我的问题有道理。任何帮助将非常感激。我看到一个例子,有人将他们的时间格式化为字符串,但我遇到了一些问题(另一个故事),如果可能的话,我宁愿使用日期时间。
谢谢!