Description:
This is a fundamental distinction in Matplotlib. As a beginner, you’ll often see plt.plot()
used, and that’s okay for quick plots. But as you grow and your projects scale, you’ll need to understand ax.plot()
— which is part of the object-oriented (OO) approach — to build more structured, reusable, and professional-quality visualizations.
Code Explanation ():
plt.plot()
is part of Matplotlib's state-based (pyplot) interface. It's designed for simplicity and mimics MATLAB-style coding. It works by implicitly tracking the current figure and axes, which is why you don’t need to explicitly create them.
ax.plot()
belongs to the object-oriented interface. You explicitly create the figure and Axes objects using fig, ax = plt.subplots()
, and then you call methods on these objects.
Why the difference matters:
plt.plot()
is convenient but less flexible when you need multiple subplots or want to customize individual axes.
ax.plot()
gives you precise control over each subplot, legend, title, and styling — it’s the professional way of doing things.
Program:
import matplotlib.pyplot as plt
# Using state-based interface
plt.plot([1, 2, 3], [4, 5, 6])
plt.title("Using plt.plot()")
plt.show()
# Using object-oriented interface
fig, ax = plt.subplots()
ax.plot([1, 2, 3], [4, 5, 6])
ax.set_title("Using ax.plot()")
plt.show()
Output:
Trainings :
Data Science Training in Indore | Data Analytics Training in Indore | Python Training in Indore | Blockchain Training in Indore | React JS Training in Indore | Web Development Training in Indore | Full Stack Development Training in Indore |Free Courses and Resource :
Verbal Aptitude | Matplotlib Tutorials | Examples | Interview Questions | Pandas Tutorials | Projects | Interview Questions | OpenCV Tutorials | Projects | Interview Questions | ExpressJS Tutorials | Projects | Interview Questions | Dart | Python Data Structures and Algorithms | Rust Tutorials | Projects | Interview Questions | Aptitude Tests | HackerRank Python | Django | MongoDB Tutorials | Examples | Interview Questions | NumPy Practice Questions | Python Tutorials by CodersDaily | Golang Tutorials | Projects | Interview Questions | React.js Tutorials | Verbal Ability Tutorial | MS Sql Server Tutorials | Examples | Interview Questions | Power BI Tutorials | Projects | Interview Questions | Example Dashboards | Numpy Tutorials | Projects | Interview Questions | Django REST Framework Tutorial | HackerRank C++ Solutions | Tensor Flow | Pandas Practice Questions | Python Practice Questions | C++ Tutorials | Quantitative Ability Tutorial | Javascript | Node.js Tutorials | HackerRank SQL Solutions | HackerRank DSA Solutions | Verbal Aptitude 2 | HackerRank Java Solutions | HTML Tutorial | TCS NQT Mock Test Series | Reasoning Ability Tutorial | CodeChef Python Solutions | HackerRank C Program Solutions | Leetcode Python Solutions | SQL Practice Question | Matplotlib Practice Questions |Interview Questions :
Pandas Tutorials | Projects | Interview Questions | ExpressJS Tutorials | Projects | Interview Questions | Django | Python Tutorials by CodersDaily | Golang Tutorials | Projects | Interview Questions | Numpy Tutorials | Projects | Interview Questions | Django REST Framework Tutorial | Matplotlib Practice Questions | Matplotlib Practice Questions | Matplotlib Practice Questions | Matplotlib Practice Questions | Matplotlib Practice Questions | Matplotlib Practice Questions | Matplotlib Practice Questions | Matplotlib Practice Questions | Matplotlib Practice Questions | Matplotlib Practice Questions |Top Colleges in India :
Indian Institute of Technology Bombay | Jaypee University of Engineering and Technology - Guna |