Table of Contents
ToggleMatplotlib एक Python की सबसे लोकप्रिय डेटा विज़ुअलाइज़ेशन लाइब्रेरी है, जिसका उपयोग ग्राफ, चार्ट और इमेजेस को प्लॉट करने के लिए किया जाता है। चाहे आप शुरुआती हों या डेटा साइंस सीख रहे हों, matplotlib python library आपको विभिन्न प्रकार की विज़ुअल रिपोर्ट बनाने में मदद करती है। यह लेख Matplotlib को विस्तार से समझाता है, साथ ही pyplot, numpy और pandas जैसे संबंधित टूल्स को भी कवर करता है – वो सब कुछ जो आपको शुरुआत करने के लिए जानना जरूरी है।
pyplot
की मदद से लाइन, बार, पाई चार्ट तैयार करना
आगे हम सीखेंगे कि कैसे Matplotlib को install करें, import matplotlib.pyplot as plt
का सही इस्तेमाल करें, और कैसे इसे Pandas DataFrame के साथ उपयोग किया जा सकता है। चलिए शुरुआत करते हैं Matplotlib की इस सीखने की यात्रा के साथ।
plt.plot(x, y)
in Matplotlib
The matplotlib.pyplot.plot(x, y)
method is used to generate a simple line plot from two arrays — x and y. The x array contains values for the x-axis, and the y array contains values for the y-axis. Both arrays must be of the same length but can have any size.
Here’s a practical example of how to create a line graph in Python using Matplotlib
and NumPy
:
import matplotlib.pyplot as plt
import numpy as np
# Generate sample data
x = np.linspace(0, 10, 100)
y = np.sin(x)
# Create the line plot
plt.plot(x, y)
# Add labels and title
plt.xlabel('x')
plt.ylabel('y')
plt.title('Sin Wave')
# Display the plot
plt.show()
In this example:
x
contains 100 evenly spaced points between 0 and 10 using np.linspace()
.y
stores the sine values of those x-points using np.sin()
.plt.plot(x, y)
to draw the line graph.xlabel
, ylabel
, and title
.plt.show()
displays the plot window.plt.xlabel()
To label the x-axis of a plot in Python, use the Matplotlib command plt.xlabel("your-label")
. The string inside the function becomes the label shown along the x-axis of your graph.
Below is an example that demonstrates how to use plt.xlabel()
to add an axis label to your chart:
import matplotlib.pyplot as plt
# Sample data
x = [1, 2, 3, 4, 5]
y = [2, 4, 6, 8, 10]
# Create the plot
plt.plot(x, y)
# Add x-axis label
plt.xlabel("x-axis label")
# Show the plot
plt.show()
In this example:
plt.plot(x, y)
generates the line graph.plt.xlabel("x-axis label")
adds the text label below the x-axis.plt.show()
renders and displays the final chart with the label.You can customize this label using additional parameters like font size, style, and color. This makes your plots more readable and presentation-friendly, especially in data analytics reports.
plt.ylabel()
To add a label to the y-axis in a Matplotlib chart, use the plt.ylabel("label-text")
function. Whatever text you pass inside the parentheses will appear along the vertical axis of your plot.
Here’s an example that demonstrates how to label the y-axis using Matplotlib:
import matplotlib.pyplot as plt
# Sample data
x = [1, 2, 3, 4, 5]
y = [2, 4, 6, 8, 10]
# Create the plot
plt.plot(x, y)
# Add y-axis label
plt.ylabel("y-axis label")
# Show the plot
plt.show()
In this example:
plt.plot(x, y)
creates a simple line chart.plt.ylabel("y-axis label")
displays a vertical label along the y-axis.plt.show()
opens the final plot window with the labeled axis.Adding axis labels is crucial when presenting data visualizations. It makes your chart easier to interpret and more professional—especially when you’re building dashboards or reports for data analytics projects.
plt.title()
You can add a title to your plot in Python by using the Matplotlib command plt.title("Your Title")
. This text will appear at the top of your chart, helping viewers quickly understand the purpose of the plot.
Here’s an example of how to use plt.title()
with sample data:
import matplotlib.pyplot as plt
# Sample data
x = [1, 2, 3, 4, 5]
y = [2, 4, 6, 8, 10]
# Create the plot
plt.plot(x, y)
# Add a title
plt.title("My Plot Title")
# Show the plot
plt.show()
In this example:
plt.plot(x, y)
generates a basic line graph from the x and y lists.plt.title("My Plot Title")
sets the title at the top of the graph.plt.show()
displays the final chart with the title visible.
You can further customize the title by changing its font size, color, alignment, and style using parameters like fontsize
, loc
, and color
inside plt.title()
.
plt.scatter()
The Matplotlib function plt.scatter(x, y)
is used to create a scatter plot — a chart that shows individual data points. It is useful for analyzing relationships and data distribution. The x
array contains values for the x-axis, and the y
array contains corresponding values for the y-axis. Both arrays must be of the same length.
Here’s an example that demonstrates how to make a basic scatter plot with random data using NumPy and Matplotlib:
import matplotlib.pyplot as plt
import numpy as np
# Generate 100 random data points
x = np.random.rand(100)
y = np.random.rand(100)
# Create scatter plot
plt.scatter(x, y)
# Add axis labels and title
plt.xlabel('x-axis')
plt.ylabel('y-axis')
plt.title('Random Scatter Plot')
# Display the plot
plt.show()
In this example:
np.random.rand(100)
generates 100 random values between 0 and 1 for both x and y axes.plt.scatter(x, y)
plots these data points as dots on the chart.plt.xlabel()
, plt.ylabel()
, plt.title()
help add meaningful context to your plot.plt.show()
renders and displays the scatter plot.Scatter plots are widely used in data science and machine learning to visualize patterns, clusters, and outliers in a dataset. You can also customize colors, marker size, and styles for better clarity.
plt.hist()
A histogram is a type of chart used to represent the frequency distribution of a dataset. In Matplotlib, you can use plt.hist(x, bins)
to create a histogram. Here, x
is the dataset and bins
determines how many intervals (bars) the data will be grouped into.
Here’s a practical example of how to generate a histogram plot using Python and NumPy:
import matplotlib.pyplot as plt
import numpy as np
# Create random data from a normal distribution
x = np.random.normal(size=1000)
# Create histogram with 30 bins
plt.hist(x, bins=30, color='skyblue', edgecolor='black')
# Add labels and title
plt.xlabel('Values')
plt.ylabel('Frequency')
plt.title('Histogram Plot')
# Display the plot
plt.show()
In this example:
np.random.normal(size=1000)
creates a dataset of 1000 values from a normal distribution.plt.hist(x, bins=30)
divides the data into 30 bins and creates the histogram.plt.xlabel()
, plt.ylabel()
, plt.title()
add informative labels and a title to the chart.plt.show()
renders the final plot.Histograms are essential for visualizing data distribution in fields like data science, statistics, and machine learning. You can customize them further by adjusting the color, edge style, or density curve.
plt.subplots()
The plt.subplots(nrows, ncols)
function in Matplotlib is used to create a grid of plots (called subplots). You can define how many rows and columns of plots you want. This is helpful when you want to display multiple charts in the same figure.
Here’s a step-by-step example of how to use it to create a vertical stack of two plots:
import matplotlib.pyplot as plt
import numpy as np
# Create data
x = np.linspace(0, 10, 100)
y1 = np.sin(x)
y2 = np.cos(x)
# Create a 2-row, 1-column grid of subplots
fig, axs = plt.subplots(nrows=2, ncols=1, figsize=(6, 8))
# Plot sine curve on the first subplot
axs[0].plot(x, y1, color='blue', label='sin(x)')
axs[0].set_xlabel('x')
axs[0].set_ylabel('y')
axs[0].legend()
# Plot cosine curve on the second subplot
axs[1].plot(x, y2, color='green', label='cos(x)')
axs[1].set_xlabel('x')
axs[1].set_ylabel('y')
axs[1].legend()
# Add a common title
fig.suptitle('Sinusoidal Functions')
# Display the full plot
plt.show()
In this example:
plt.subplots(2, 1)
creates two subplots stacked vertically.axs[0]
and axs[1]
are used to individually access and customize each subplot.fig.suptitle()
is used to add a shared title across all plots.figsize=(6, 8)
sets the size of the overall figure in inches (width × height).
This method is essential when you want to compare two or more plots side by side or vertically. You can also use plt.subplots(2, 2)
to create a 2×2 grid for even more flexibility.
plt.imshow()
in Matplotlib
The plt.imshow(data)
function in Matplotlib is used to display a 2D array as an image. It’s commonly used to visualize matrix-like data, heatmaps, or grayscale images in Python.
Here’s a simple example that shows how to use plt.imshow()
with random data:
import matplotlib.pyplot as plt
import numpy as np
# Create a 10x10 array of random values
data = np.random.rand(10, 10)
# Display the 2D array as an image
plt.imshow(data, cmap='viridis') # You can try cmap='hot', 'gray', etc.
# Add colorbar for scale reference
plt.colorbar()
# Show the plot
plt.show()
🔍 Explanation:
np.random.rand(10, 10)
creates a 10×10 matrix with values between 0 and 1.plt.imshow(data)
renders the array visually as an image.cmap
defines the color palette. Try other options like 'hot'
, 'cool'
, or 'gray'
.plt.colorbar()
adds a color scale to interpret the image intensity.This method is widely used in data science, image processing, and machine learning—for example, to view confusion matrices, filters in neural networks, or heatmaps in correlation analysis.
plt.legend()
The plt.legend()
command in Matplotlib is used to add a legend box to your plot. A legend helps viewers understand what each line, marker, or symbol in the plot represents by mapping them to labels you’ve defined.
Below is an example that illustrates how to add a legend to a plot containing sine and cosine curves:
import matplotlib.pyplot as plt
import numpy as np
# Generate x values
x = np.linspace(0, 10, 100)
# Generate y values
y1 = np.sin(x)
y2 = np.cos(x)
# Plot both lines with labels
plt.plot(x, y1, color='blue', label='sin(x)')
plt.plot(x, y2, color='green', label='cos(x)')
# Add legend to the plot
plt.legend()
# Add axis labels and title
plt.xlabel('x')
plt.ylabel('y')
plt.title('Trigonometric Functions')
# Display the plot
plt.show()
🔍 Explanation:
label='sin(x)'
and label='cos(x)'
assign names to each line plot.plt.legend()
automatically creates a legend box based on these labels.plt.legend(loc='upper right')
, 'lower left'
, etc.Using legends is crucial when you’re visualizing multiple datasets in one plot. It improves readability, especially when color-coded lines or markers represent different variables or models.
From line charts to histograms, bar plots, scatter plots, polar plots, and even 3D visualizations—Matplotlib has it all to cater to every analytical scenario.
Control every element—colors, fonts, labels, grid lines, legends—to create highly customized, presentation-ready plots.
A well-established library with an active developer base, tons of tutorials, and extensive documentation makes learning and troubleshooting easier.
Directly visualize data from NumPy arrays and Pandas DataFrames without additional conversion or steps.
Works smoothly on Windows, macOS, and Linux—making your code truly portable and deployable anywhere.
Zoom, pan, and interact with your plots using Matplotlib’s built-in interactive features or via backends like TkAgg or Qt5Agg.
Easily integrate plots into PyQt, Tkinter, or wxPython GUIs to build full-featured data-driven applications.
Export charts to high-resolution PNG, JPG, SVG, or PDF—ideal for research papers, dashboards, or presentations.
Continuous updates and new features keep Matplotlib relevant in modern data science workflows.
From official docs to YouTube, Stack Overflow, and community courses, learning Matplotlib is beginner-friendly and resource-rich.
pip install matplotlib
in your terminal or command prompt.
Vista Academy’s Master Program in Data Science offers in-depth training in advanced topics such as machine learning, artificial intelligence, big data analytics, and predictive modeling. Gain hands-on experience with Python, R, SQL, and TensorFlow to build a strong foundation for your career in data science.
Address: Vista Academy, 316/336, Park Rd, Laxman Chowk, Dehradun, Uttarakhand 248001