Matplotlib.pyplot.ion() in Python
Last Updated :
28 Apr, 2025
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.pyplot.ion() is used to turn on interactive mode. To check the status of interactive mode one can run the below commands,Â
plt.rcParams['interactive']
or, this command
plt.isinteractive()
Matplotlib also interacts with different backends behind the scenes. The workhorse behind rendering charts in Matplotlib is its backends. Some interactive backends dynamically update and pop up to users after every change. By default, the interactive mode is turned off.
Also Read: How to turn off Interactive Mode
Matplotlib.pyplot.ion() Syntax in Python
Syntax : matplotlib.pyplot.ion()
Parameter:
ion() function in pyplot
enables interactive mode, automatically updating plots in response to events without explicit commands.
Return type : None
Matplotlib.pyplot.ion() in Python Example
There are various example for use Matplotlib in interactive mode or How to use Matplotlib in interactive mode with Matplotlib.pyplot.ion() . Here we are discussing some generally use example those are following.
Interactive Plot with Collections
In this example code utilizes Matplotlib to generate an interactive plot with two random data collections, represented by red 'x' and blue '+' markers. It includes a filled green region between the collections where the second one surpasses the first, and a legend with a colored background is placed at the upper center of the plot.
Python3
import matplotlib.pyplot as plt
#the function to turn on interactive mode
plt.ion()
#creating randomly generate collections/data
random_array = np.arange(-4, 5)
collection_1 = random_array ** 2
collection_2 = 10 / (random_array ** 2 + 1)
figure, axes = plt.subplots()
axes.plot(random_array, collection_1,
'rx', random_array,
collection_2, 'b+',
linestyle='solid')
axes.fill_between(random_array,
collection_1,
collection_2,
where=collection_2>collection_1,
interpolate=True,
color='green', alpha=0.3)
lgnd = axes.legend(['collection-1',
'collection-2'],
loc='upper center',
shadow=True)
lgnd.get_frame().set_facecolor('#ffb19a')
Output:Â

Interactive Matplotlib Plot with Multiple Lines
In this example The code sets up an interactive Matplotlib plot, plots a line with points (1.4, 2.5), and adds a title. It retrieves the current Axes object and plots another line with points (3.1, 2.2) on the same plot
Python3
import matplotlib.pyplot as plt
plt.ion()
plt.plot([1.4, 2.5])
plt.title(" Sample interactive plot")
axes = plt.gca()
axes.plot([3.1, 2.2])
Output:Â

Interactive Matplotlib Plot with draw()
In this example code initializes an interactive Matplotlib plot, creating a sine wave and plotting it in blue. It then iterates through phases, updating the y-data of the sine wave and redrawing the plot, resulting in an animated sine wave with a short pause between frames.
Python3
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(0, 10 * np.pi, 100)
y = np.sin(x)
plt.ion()
fig, ax = plt.subplots()
line1, = ax.plot(x, y, 'b-')
for phase in np.linspace(0, 10 * np.pi, 100):
line1.set_ydata(np.sin(0.5 * x + phase))
fig.canvas.draw()
plt.pause(0.1) # Add a short pause to improve animation smoothness
Output :

Similar Reads
Matplotlib.pyplot.gci() in Python Matplotlib is a library in Python and it is numerical â mathematical extension for NumPy library. Pyplot is a state-based interface to a Matplotlib module which provides a MATLAB-like interface. There are various plots which can be used in Pyplot are Line Plot, Contour, Histogram, Scatter, 3D Plot,
2 min read
Matplotlib.pyplot.grid() in Python matplotlib.pyplot.grid() function in Matplotlib is used to toggle the visibility of grid lines in a plot. Grid lines help improve readability of a plot by adding reference lines at major and/or minor tick positions along the axes. Example:Pythonimport matplotlib.pyplot as plt fig, ax = plt.subplots(
3 min read
Matplotlib.pyplot.axis() in Python axis() function in Matplotlib is used to get or set properties of the x- and y-axis in a plot. It provides control over axis limits, aspect ratio and visibility, allowing customization of the plotâs coordinate system and view. It's key feature includes:Gets or sets the axis limits [xmin, xmax, ymin,
3 min read
Matplotlib.pyplot.clim() in Python Matplotlib is a library in Python and it is numerical - mathematical extension for NumPy library. Pyplot is a state-based interface to a Matplotlib module which provides a MATLAB-like interface. There are various plots which can be used in Pyplot are Line Plot, Contour, Histogram, Scatter, 3D Plot,
2 min read
Matplotlib.pyplot.bone() in Python Matplotlib is a library in Python and it is numerical - mathematical extension for NumPy library. Pyplot is a state-based interface to a Matplotlib module which provides a MATLAB-like interface. There are various plots which can be used in Pyplot are Line Plot, Contour, Histogram, Scatter, 3D Plot,
2 min read
Matplotlib.pyplot.ginput() in Python Matplotlib is a library in Python and it is numerical â mathematical extension for NumPy library. Pyplot is a state-based interface to a Matplotlib module which provides a MATLAB-like interface. There are various plots which can be used in Pyplot are Line Plot, Contour, Histogram, Scatter, 3D Plot,
2 min read
Matplotlib.pyplot.hlines() in Python 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. Matplotlib.pyplot.hlines() The Matplotlib.pyplot.hlines() is used to draw horizontal lin
2 min read
matplotlib.pyplot.axhline() in Python Matplotlib is a library in Python and it is numerical - mathematical extension for NumPy library. Pyplot is a state-based interface to a Matplotlib module which provides a MATLAB-like interface. matplotlib.pyplot.axhline() Function The axhline() function in pyplot module of matplotlib library is use
2 min read
Matplotlib.pyplot.axvline() in Python Matplotlib is a plotting library for creating static, animated, and interactive visualizations in Python. Matplotlib can be used in Python scripts, the Python and IPython shell, web application servers, and various graphical user interface toolkits like Tkinter, awxPython, etc. Note: For more inform
3 min read
Matplotlib.pyplot.findobj() in Python 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. matplotlib.pyplot.findobj() This function is used to recursively find all instances of a
2 min read