Python - How to plot a Pandas DataFrame in a Bar Graph

A Pandas DataFrame can be easily visualized as a bar graph using the built-in plot() method. This is useful for comparing categorical data and displaying numerical relationships.

Sample Dataset

Let's create a sample DataFrame with car sales data ?

import pandas as pd
import matplotlib.pyplot as plt

# Create sample data
data = {
    'Car': ['BMW', 'Lexus', 'Audi', 'Jaguar', 'Mustang'],
    'Reg_Price': [2000, 1500, 1500, 2000, 1500]
}

dataFrame = pd.DataFrame(data)
print(dataFrame)
      Car  Reg_Price
0     BMW       2000
1   Lexus       1500
2    Audi       1500
3  Jaguar       2000
4 Mustang       1500

Creating a Bar Graph

Use the plot() method with kind="bar" to create a bar graph ?

import pandas as pd
import matplotlib.pyplot as plt

# Create sample data
data = {
    'Car': ['BMW', 'Lexus', 'Audi', 'Jaguar', 'Mustang'],
    'Reg_Price': [2000, 1500, 1500, 2000, 1500]
}

dataFrame = pd.DataFrame(data)

# Plot as bar graph
dataFrame.plot(x="Car", y="Reg_Price", kind="bar", figsize=(8, 6))
plt.title("Car Registration Prices")
plt.ylabel("Price ($)")
plt.xticks(rotation=45)
plt.show()

Horizontal Bar Graph

Create a horizontal bar graph using kind="barh" ?

import pandas as pd
import matplotlib.pyplot as plt

# Create sample data
data = {
    'Car': ['BMW', 'Lexus', 'Audi', 'Jaguar', 'Mustang'],
    'Reg_Price': [2000, 1500, 1500, 2000, 1500]
}

dataFrame = pd.DataFrame(data)

# Plot as horizontal bar graph
dataFrame.plot(x="Car", y="Reg_Price", kind="barh", figsize=(8, 6))
plt.title("Car Registration Prices")
plt.xlabel("Price ($)")
plt.show()

Multiple Columns Bar Graph

Plot multiple columns side by side for comparison ?

import pandas as pd
import matplotlib.pyplot as plt

# Create data with multiple price columns
data = {
    'Car': ['BMW', 'Lexus', 'Audi', 'Jaguar', 'Mustang'],
    'Reg_Price': [2000, 1500, 1500, 2000, 1500],
    'Sale_Price': [1800, 1300, 1200, 1700, 1200]
}

dataFrame = pd.DataFrame(data)

# Plot multiple columns
dataFrame.set_index('Car')[['Reg_Price', 'Sale_Price']].plot(kind='bar', figsize=(10, 6))
plt.title("Car Prices Comparison")
plt.ylabel("Price ($)")
plt.xticks(rotation=45)
plt.legend(title="Price Type")
plt.show()

Key Parameters

Parameter Description Example
x Column for x-axis labels x="Car"
y Column for y-axis values y="Reg_Price"
kind Type of plot kind="bar" or kind="barh"
figsize Figure dimensions (width, height) figsize=(10, 6)

Conclusion

Use DataFrame.plot(kind="bar") to create bar graphs from pandas data. Customize with parameters like figsize, add titles with plt.title(), and use kind="barh" for horizontal bars.

Updated on: 2026-03-26T13:33:18+05:30

3K+ Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements