我希望在我的绘图上同时获得水平和垂直网格线,但默认情况下只显示水平网格线 . 我在python中使用来自SQL查询的 pandas.DataFrame
来生成x轴上带日期的线图 . 我找到了一个 .
我用来绘制图表的所有内容都是下面的简单代码 .
data.plot()
grid('on')
data是DataFrame,它包含sql查询中的日期和数据 .
我也试过添加下面的代码,但我仍然得到相同的输出没有垂直网格线 .
ax = plt.axes()
ax.yaxis.grid() # horizontal lines
ax.xaxis.grid() # vertical lines
有什么建议?
4 回答
你可能需要在你的电话中给出布尔arg,例如使用
ax.yaxis.grid(True)
而不是ax.yaxis.grid()
. 此外,由于您使用它们两者,因此可以组合成ax.grid
,它可以同时适用于两者,而不是每个维度执行一次 .那应该是你排除 .
According to matplotlib documentation,
Axes
类grid()
方法的签名如下:因此,为了显示x轴和y轴的网格线,我们可以使用以下代码:
这种方法使我们能够更好地控制网格线的显示内容 .
也许这可以解决问题:matplotlib, define size of a grid on a plot
事实是网格正在运行,但是00:00只有一个v网格而其他网格没有网格 . 我遇到了同样的问题,即11月1日中只有一个网格 .
plt.gca().xaxis.grid(True)
被证明是我的解决方案