当前位置: 动力学知识库 > 问答 > 编程问答 >

python - Multiple grids on matplotlib

问题描述:

I'm making plots in python and matplotlib, which I found huge and flexible, till now.

The only thing I couldn't find how to do, is to make my plot have multiple grids.

I've looked into the docs, but that's just for line style...
I'm thinking on something like two plots each one with a different grid, which will overlap them.

So, for example I want to make this graph:

alt text http://img137.imageshack.us/img137/2017/waittimeprobability.png

Have a similar grid marks as this one:

alt text http://img137.imageshack.us/img137/6122/saucelabssauceloadday.png

And by that, I mean, more frequent grids with lighter color between important points.

网友答案:

How about something like this (adapted from here):

from pylab import *
from matplotlib.ticker import MultipleLocator, FormatStrFormatter

t = arange(0.0, 100.0, 0.1)
s = sin(0.1*pi*t)*exp(-t*0.01)

ax = subplot(111)
plot(t,s)

ax.xaxis.set_major_locator(MultipleLocator(20))
ax.xaxis.set_major_formatter(FormatStrFormatter('%d'))
ax.xaxis.set_minor_locator(MultipleLocator(5))

ax.yaxis.set_major_locator(MultipleLocator(0.5))
ax.yaxis.set_minor_locator(MultipleLocator(0.1))

ax.xaxis.grid(True,'minor')
ax.yaxis.grid(True,'minor')
ax.xaxis.grid(True,'major',linewidth=2)
ax.yaxis.grid(True,'major',linewidth=2)

show()

分享给朋友:
您可能感兴趣的文章:
随机阅读: