2014-02-25 38 views
2

有一個代碼:我如何修改Y軸的步驟在python

ax.set_ylim(0.000001,0.01) 
ax.set_yscale('log') 

如何才能做到有y 0.000001和0.01之間變化以0.01的步驟。也就是說,爲了得到像10^-6,10^-5等增量的y,我希望有10^-6,10^-4直到10^-2。

+0

http://stackoverflow.com/questions/3013350/how-to-change-the-amount-of-increments-in-pyplot-axis – joaquin

回答

0

這是你想要的嗎?

import numpy as np 
ax.set_yticks(np.logspace(-6,-2,num=5)) 

np.logspace(-6,-2,num=5)給出:

array([ 1.00000000e-06, 1.00000000e-05, 1.00000000e-04, 
     1.00000000e-03, 1.00000000e-02]) 
+0

這是更好地更改'Locator'和'Formatter',而不是直接使用'set_yticks'。 – tacaswell

+0

@tcaswell可能會幫助更多的人爲這個案例提供一些代碼片段;) – zhangxaochen

+0

http://matplotlib.org/api/ticker_api.html'ax.get_yaxis()。set_major_formatter(mticker.LogForamatter(base = 100.0))'more - 或更少的作品,但看起來比我預期的有趣。 – tacaswell