Matplotlib.ticker.AutoLocator Class in Python - GeeksforGeeks

07 Oct, 2021
Matplotlib is an amazing visualization library in Python for 2D plots of arrays. Matplotlib is a multi-platform data visualization library built on NumPy arrays and designed to work with the broader SciPy stack. 
The matplotlib.ticker.AutoLocator class is a subclass of matplotlib.ticker.MaxNLocator, and has parameters nbins = ‘auto’ and steps = [1, 2, 2.5, 5, 10]. It is used to dynamically find major tick positions. 
Syntax:class matplotlib.ticker.AutoLocatorParameters:  
nbins: It is either an integer or ‘auto’, where the integer value represents the maximum number of intervals; one less than max number of ticks. The number of bins gets automatically determined on the basis of the length of the axis.It is an optional argument and has a default value of 10. 
steps: It is an optional parameter representing a nice number sequence that starts from 1 and ends with 10. 
integer: It is an optional boolean value. If set True, the ticks accepts only integer values, provided at least min_n_ticks integers are within the view limits. 
symmetric: It is an optional value. If set to True, auto-scaling will result in a range symmetric about zero. 
prune: It is an optional parameter that accepts either of the four values: {‘lower’, ‘upper’, ‘both’, None}. By default it is None.  
Example 1:  
Python3
import matplotlibimport matplotlib.pyplot as pltimport numpy as np  fig, axes = plt.subplots(3, 4,                         sharex = 'row',                         sharey = 'row',                         squeeze = False) data = np.random.rand(20, 2, 10) for ax in axes.flatten()[:-1]:         ax.plot(*np.random.randn(2, 10), marker ="o", ls ="")   # Now remove axes[1, 5] from# the grouper for xaxisaxes[2, 3].get_shared_x_axes().remove(axes[2, 3]) # Create and assign new tickerxticker = matplotlib.axis.Ticker()axes[2, 3].xaxis.major = xticker # The new ticker needs new locator# and formattersxloc = matplotlib.ticker.AutoLocator()xfmt = matplotlib.ticker.ScalarFormatter() axes[2, 3].xaxis.set_major_locator(xloc)axes[2, 3].xaxis.set_major_formatter(xfmt) # Now plot to the "ungrouped" axesaxes[2, 3].plot(np.random.randn(10)*100 + 100,                np.linspace(-3, 3, 10),                marker ="o", ls ="",                color ="green") plt.show()
Output:  
Example 2:  
Python3
import pylab as plfrom matplotlib import ticker  # helper functiondef 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()
Output:  
 
gabaa406
Python-matplotlib
Python
Write From Home
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
Python Dictionary
Read a file line by line in Python
Enumerate() in Python
How to Install PIP on Windows ?
Iterate over a list in Python
Convert integer to string in Python
Convert string to integer in Python
Python infinity
How to set input type date in dd-mm-yyyy format using HTML ?
Matplotlib.pyplot.title() in Python