2012-04-25 38 views
3

在我的情節中,yticks彼此太接近(因爲我改變了yticks字體)。所以我想限制/修復yticks的數量。因爲我有數百個地塊,我想改變「globaly」(在matplotlibrc或使用字典等)matplotlib globaly set spacing/ticks/tickslabels

任何想法嗎?像ax.xaxis.set_major_locator(MaxNLocator(4))但全球

順便說一句:我找不到如何引用軸而不使用子圖。任何提示?

回答

5

可以自動定位的方法__init__改變你的函數,沒有任何劇情前:

import pylab as pl 
from matplotlib import ticker 

def AutoLocatorInit(self): 
    ticker.MaxNLocator.__init__(self, nbins=4, steps=[1, 2, 5, 10]) 
ticker.AutoLocator.__init__ = AutoLocatorInit 

pl.plot(pl.randn(100)) 
pl.figure() 
pl.hist(pl.randn(1000), bins=40) 
pl.show() 
+0

你無法想象,你有多少時間救了我8)非常感謝。是否有可能對x軸和y軸進行不同的設置。只是爲了好奇 – 2012-04-26 08:48:19

+0

是的,要爲x和y軸設置不同的bin,我們需要在AutoLocator中破解其他一些方法。 – HYRY 2012-04-26 12:12:54