How to change the color of a plot with Matplotlib

2 min

Here is a simple example of line plot without specifying colors using the Matplotlib library.

import matplotlib.pyplot as plt
import pandas as pd

# We create our dataframe
df = pd.DataFrame(index=range(0,10), data={"col1" : range(0,10)})

fig, axes = plt.subplots(1,1, figsize=(8,6))

# We do a line plot on the axes
axes.plot(df.index, df["col1"])

# Fixing the layout to fit the size
fig.tight_layout()

# Showing the plot
plt.show()
Simple plotting example using Matplotlib

Changing the line color

We can specify colors for each dataset that we plot with the c=color parameter. (e.g. c='red')

import matplotlib.pyplot as plt
import pandas as pd

# We create our dataframe
df = pd.DataFrame(index=range(0,10), data={"col1" : range(0,10)})

fig, axes = plt.subplots(1,1, figsize=(8,6))

# We do a line plot on the axes
axes.plot(df.index, df["col1"], c='red')

# Fixing the layout to fit the size
fig.tight_layout()

# Showing the plot
plt.show()
Plotting a red line

Changing the theme

Matplotlib comes with different themes that you can chose from

import matplotlib.pyplot as plt

# Print out the available styles
print(plt.style.available)
Check what style is available

Here is a practical example of changing the matplotlib theme.

import matplotlib.pyplot as plt
import pandas as pd

# Changing the matplotlib style theme
plt.style.use('ggplot')

# We create our dataframe
df = pd.DataFrame(index=range(0,10), data={"col1" : range(0,10)})

fig, axes = plt.subplots(1,1, figsize=(8,6))

# We do a line plot on the axes
axes.plot(df.index, df["col1"], c='red')

# Fixing the layout to fit the size
fig.tight_layout()

# Showing the plot
plt.show()
Changing the theme and plotting a red line

As you can see we just changed the theme of our plot.

Here you are ! You now know how to change both the color of your plot and its theme.

More on plots

If you want to know more about how to add labels, plot different types of plots, etc... checkout the other articles I wrote on the topic, just here :

Matplotlib - The Python You Need
We gathered the only Python essentials that you will probably ever need.