Hello,
I was wondering if the following behavior is a bug of LogLocator
class or just a known limitation:
(mpl 1.3.1)
Input:
plt_scale = ‘log’
#plt_scale = 'linear' fig, (ax1) = plt.subplots(1, 1) ax1.set(yscale=plt_scale) # works for linear scale, not for log: ax1.axes.locator_params('y', nbins=5)
Result:
AttributeError Traceback
(most recent call last)
<ipython-input-74-3492af5f93c8> in <module>() 7 8 # works for linear scale, not for log: ----> 9 ax1.axes.locator_params('y', nbins=5) /home/pierre/anaconda/lib/python2.7/site-packages/matplotlib/axes.pyc
in locator_params(self, axis, tight, **kwargs)
2305
self.xaxis.get_major_locator().set_params(**kwargs)
2306 if _y: -> 2307
self.yaxis.get_major_locator().set_params(**kwargs)
2308 self.autoscale_view(tight=tight, scalex=_x,
scaley=_y)
2309 AttributeError: 'LogLocator' object has no attribute 'set_params'
What I get from the traceback is that `locator_params` method
forwards the locator attributes (in my case nbins
) to the actual
locator object via its set_params
method. And this method is
missing from LogLocator
So my question is: shouldn't all Locator subclasses have a
set_params
method ?
best,
Pierre
(set_params is indeed defined in MaxNLocator
)