Open In App

Matplotlib.pyplot.locator_params() in Python

Last Updated : 21 Apr, 2020
Improve
Improve
Like Article
Like
Save
Share
Report

Matplotlib is one of the most popular Python packages used for data visualization. It is a cross-platform library for making 2D plots from data in arrays.Pyplot is a collection of command style functions that make matplotlib work like MATLAB.

Note: For more information, refer to Python Matplotlib – An Overview

locator_params() is used for controlling the behaviors of tick locators. The attribute axis is for specifying on which axis is the function being applied.

# for Y axis
matplotlib.pyplot.locator_params(axis='y', nbins=3) 

# for X axis
matplotlib.pyplot.locator_params(axis='x', nbins=3) 

# for both, x-axis and y-axis: Default
matplotlib.pyplot.locator_params(nbins=3) 

Reducing the maximum number of ticks and use tight bounds:

plt.locator_params(tight=True, nbins=4)

Example 1:




# importing libraries
import matplotlib.pyplot as plt
  
# Y-axis Values
y =[-1, 4, 9, 16, 25]
  
# X-axis Values
x =[1, 2, 3, 4, 5]
  
plt.locator_params(axis ='x', nbins = 5)
  
# adding grid to the plot
axes = plt.axes()
axes.grid()
  
# defining the plot
plt.plot(x, y, 'mx', color ='green')
  
# range of y-axis in the plot
plt.ylim(ymin =-1.2, ymax = 30)
  
# Set the margins
plt.margins(0.2)
  
# printing the plot
plt.show()


Output:
graph

Example 2:




# importing libraries
import matplotlib.pyplot as plt
  
# defining the function
def for_lines(xlab, ylab, plot_title,
              size_x, size_y, content =[]): 
      
  width = len(content[0][1:])
  s = [x for x in range(1, width + 1)] 
  
  # specifying the size of figure
  plt.figure(figsize =(size_x, size_y))
  
  for line in content: 
        plt.plot(s,  line[1:], 'ro--'
                 color ='green',
                 label = line[0])
          
  # to add title to the plot
  plt.title(plot_title)
      
  # for adding labels to the plot
  plt.xlabel(xlab)
  plt.ylabel(ylab) 
  
  t = len(s) 
  plt.locator_params(nbins = t)
  
for_lines("x-axis", "y-axis",
          "GeeksForGeeks", 7, 7,
          [[1, 2, 4, 3, 5]])


Output:
graph

Example 3:




# importing libraries
import matplotlib.pyplot as plt
  
plt.locator_params(nbins = 10)
  
# defining the plot
plt.plot([1, 2, 3, 5, 7],
         [2, 3, 9, 15, 16],
         'ro-', color ='red')
  
# printing the plot
plt.show()


Output:
graph



Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads