How to Clear Plot in Matplotlib Using clear() Method

Hello programmers, in today’s article, we will discuss Matplotlib clear plot in python. Matplotlib is a library in Python, which is a numerical – mathematical extension for NumPy library. The figure module of the Matplotlib library provides the top-level Artist, the Figure, which contains all the plot elements. The figure module is used to control the subplots’ default spacing and top-level container for all plot elements.

The Axes Class contains the figure elements: Axis, Tick, Line2D, Text, Polygon, etc., and sets the coordinate system. The instances of Axes supports callbacks through a callbacks attribute. The Axes.clear() in the axes module of the matplotlib library is used to clear the axes. Thus, the Matplotlib figure.clear() and axes.clear() is used to clear figure and axes, respectively. Here are the syntax and parameters of the Matplotlib clear plot function.

Syntax of Matplotlib clear plot in Python

clear(self, keep_observers=False)

Parameter

The axis.clear() function accepts no parameters.
The ‘keep_observers’ parameter in figure.clear() function is a boolean value.

Return type

The clear() function does not return any value. It is used in python programs to clear plots.

Example of Matplotlib Figure clear plot

import numpy as np 
import matplotlib.pyplot as plt 
      
fig, ax = plt.subplots() 
  
ax.set_xlabel('x-axis') 
ax.set_ylabel('y-axis') 
  
ax.plot([1, 2, 3]) 
ax.grid(True) 
  
fig.clear(True) 
   
fig.suptitle('matplotlib.figure.Figure.clear() \ 
function Example\n\n', fontweight ="bold") 
  
plt.show() 

Output:

Matplotlib clear figure plot in Python

Explanation:

In the above example, we first create a plot per input data values. The xlabel is ‘x-axis,’ and the ylabel is ‘y-axis.’ The title of the figure is ‘matplotlib.figure.Figure.clear() function Example’. The gridlines are also plotted for the figure by setting ax.grid(True). But before the plt.show() statement that shows the plotted figure, we use the fig.clear() function. The fig.clear() function clears the figure plot when ‘True’ is an argument. Thus, in this example, since fig.clear(True) is before the plt.show(), the output is the entire clear current figure except the figure title.

Example of Matplotlib Axis clear plot

import numpy as np 
import matplotlib.pyplot as plt 
     
t = np.linspace(0.0, 2.0, 201) 
s = np.sin(2 * np.pi * t) 
  
fig, [ax, ax1] = plt.subplots(2, 1, sharex = True) 
  
ax.set_ylabel('y-axis') 
ax.plot(t, s) 
ax.grid(True) 
ax.set_title('matplotlib.axes.Axes.clear() Example\n\n Sample Example', 
             fontsize = 12, fontweight ='bold') 
  
ax1.set_ylabel('y-axis') 
ax1.plot(t, s) 
ax1.grid(True) 
ax1.clear() 
ax1.set_title('Above example with clear() \ 
function', fontsize = 12, fontweight ='bold') 
plt.show() 

Output:

Matplotlib Axes clear plot in python

Explanation:

In the above example, the two plots ‘ax’ and ‘ax1’ are created. The ylabel of figure 1 is ‘y-axis.’ The Matplotlib grid() is also ‘True,’ which returns grid lines for the figure. Also, the title of the figure is mentioned. But, we do not use the Matplotlib clear() function with the ‘ax’ plot. For the second figure, we plot it as per the given input values. But since the ax2.clear() is used, the current ‘ax2’ figure plot is cleared except for its title. Finally, the plt.show() statement gives the ‘ax’ figure and clears the ‘ax2’ figure with just its title.

Must Read

Conclusion

In this article, we have discussed ways of Matplotlib clear plot in Python. The clear() function as axes.clear() or figure.clear() clears the axes and figure of the plot, respectively. We have discussed both axes clearly and figure clear with examples and explanations. The Matplotlib cla() function can be used as axes.clear() function. Similarly, the clf() function makes figure clear. Both cla() and clf() clears plot in Matplotlib.

However, if you have any doubts or questions, do let me know in the comment section below. I will try to help you as soon as possible.

Happy Pythoning!

Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments