我想使用 matplotlib 和 Axes.pcolormesh
来创建绘图。我的问题是我想要沿 x 轴设置日期:
import matplotlib.pyplot as plt
fig = plt.figure()
ax = fig.add_subplot(111)
qmesh = ax.pcolormesh(times,mlt,data.T)
fig.colorbar(qmesh,ax=ax)
在此代码中,times
是使用 matplotlib.dates.date2num
创建的 (1D) numpy 数组。这将创建一个非常合理的图,除了 x 轴标有 1e5
顺序的值,而不是格式为 '%H:%M'
的日期/时间.任何建议,将不胜感激。谢谢。
最佳答案
除了您已经找到的答案之外,您还可以执行 ax.xaxis_date()
,这实际上是等效的。
作为一个快速示例(它也使用 fig.autofmt_xdate()
来旋转 x 标签):
import matplotlib.pyplot as plt
import matplotlib.dates as mdates
import datetime as dt
# Generate some data
x = mdates.drange(dt.datetime(2012, 01, 01), dt.datetime(2013, 01, 01),
dt.timedelta(weeks=2))
y = np.linspace(1, 10, 20)
data = np.random.random((y.size, x.size))
# Plot
fig = plt.figure()
ax = fig.add_subplot(111)
qmesh = ax.pcolormesh(x, y, data)
fig.colorbar(qmesh,ax=ax)
ax.axis('tight')
# Set up as dates
ax.xaxis_date()
fig.autofmt_xdate()
plt.show()
关于python - 沿 quadmesh 的 x 轴的日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16906268/