python - 带日期的 matplotlib 条形图

标签 python datetime matplotlib bar-chart

我知道 plot_date(),但有 bar_date() 吗?

一般的方法是使用 set_xticksset_xticklabels,但我想要一些可以处理从几个小时到几年的时间尺度的东西(这个意味着涉及主要和次要刻度以使我认为内容可读)。

编辑:我意识到我正在绘制与特定时间间隔(条形跨越)相关的值。我在下面更新了我使用的基本解决方案:

import matplotlib.pyplot as plt  
import datetime  
t=[datetime.datetime(2010, 12, 2, 22, 0),datetime.datetime(2010, 12, 2, 23, 0),         datetime.datetime(2010, 12, 10, 0, 0),datetime.datetime(2010, 12, 10, 6, 0)]  
y=[4,6,9,3]  
interval=1.0/24.0  #1hr intervals, but maplotlib dates have base of 1 day  
ax = plt.subplot(111)  
ax.bar(t, y, width=interval)  
ax.xaxis_date()   
plt.show()

最佳答案

全部 plot_date所做的是绘制函数和调用 ax.xaxis_date() .

您只需要这样做:

import numpy as np
import matplotlib.pyplot as plt
import datetime

x = [datetime.datetime(2010, 12, 1, 10, 0),
    datetime.datetime(2011, 1, 4, 9, 0),
    datetime.datetime(2011, 5, 5, 9, 0)]
y = [4, 9, 2]

ax = plt.subplot(111)
ax.bar(x, y, width=10)
ax.xaxis_date()

plt.show()

bar graph with x dates

关于python - 带日期的 matplotlib 条形图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5902371/

相关文章:

python - 对数刻度线已填充,看起来像一个半圆

python - 使用 Mongoengine 按 id 删除 ListField 项

python - 语法错误 : invalid syntax in conda

c# - 什么是操作大量 DateTime 记录的好算法?

python - 如何在同一个 numpy 数组上使用 matplotlib 的 imshow 和等高线图?

python - 绘制嵌套的 networkx 图

python - 如何在 python 中按日期时间对列表进行排序?

python - numpy 傅里叶变换产生意想不到的结果

sql - 在Oracle sql中转换日期格式

python - 在 Pandas 中处理日期 - 删除日期时间中看不见的字符并转换为字符串