25

我在 Python 中使用 Matplotlib 进行绘图。我想用网格创建绘图,这是绘图教程中的一个示例。在我的绘图范围内,如果 y 轴从 0 到 14,并且如果我使用pylab.grid(True)它,那么它会创建一个大小为 2 的正方形的网格,但我希望大小为 1。我该如何强制它?

4

2 回答 2

26

按照此处的建议,尝试使用ax.grid(True, which='both')将网格线定位在主要和次要刻度上。

编辑:或者只是手动设置您的刻度,如下所示:

import matplotlib.pyplot as plt

fig = plt.figure()
ax = fig.add_subplot(111)
ax.plot([1,2,3,14],'ro-')

# set your ticks manually
ax.xaxis.set_ticks([1.,2.,3.,10.])
ax.grid(True)

plt.show()
于 2012-05-04T18:00:40.473 回答
7

如果您想遵循您引用的示例:

>>> import numpy
>>> import pylab
>>> t = numpy.arange(0.0, 1.0+0.1, 0.01)
>>> s = numpy.cos(2*2*numpy.pi*t)
>>> pylab.plot(t,s)
>>> pylab.grid(True)
>>> pylab.xticks([i/10.0 for i in range(0,12)])
>>> pylab.show()
于 2012-05-04T18:28:26.913 回答