Skip to content
Related Articles

Related Articles

Improve Article
Save Article
Like Article

How to Fill Between Multiple Lines in Matplotlib?

  • Difficulty Level : Expert
  • Last Updated : 08 Oct, 2021

With the use of the fill_between()  function in the Matplotlib library in Python, we can easily fill the color between any multiple lines or any two horizontal curves on a 2D plane.

Syntax: matplotlib.pyplot.fill_between(x, y1, y2=0, where=None, step=None, interpolate=False, *, data=None, **kwargs)

 Attention geek! Strengthen your foundations with the Python Programming Foundation Course and learn the basics.  

To begin with, your interview preparations Enhance your Data Structures concepts with the Python DS Course. And to begin with your Machine Learning Journey, join the Machine Learning - Basic Level Course

Example 1: Color between the curve of the mathematical function f(x)=sin(x)

Python3






import pylab as plt
import numpy as np
 
x = np.arange(0.0, 2, 0.01)
y1 = np.sin(2 * np.pi * x)
y2 = 0.8 * np.sin(4 * np.pi * x)
 
fig, (ax1, ax2, ax3) = plt.subplots(
  3, 1, sharex=True, figsize=(6, 6))
 
ax1.fill_between(x, y1)
ax1.set_title('fill between y1 and 0')
 
ax2.fill_between(x, y1, 1)
ax2.set_title('fill between y1 and 1')
 
ax3.fill_between(x, y1, y2)
ax3.set_title('fill between y1 and y2')
ax3.set_xlabel('x')
fig.tight_layout()


Output:

 Example 2: Color between the curve of the mathematical function f(x)=cos(x) and f(x)=exp(x) :-

Python3




import pylab as plt
import numpy as np
 
X = np.linspace(0, 3, 200)
Y1 = X**2 + 3
Y2 = np.sin(X)
Y3 = np.cos(X)
 
plt.plot(X, Y1, lw=4)
plt.plot(X, Y2, lw=4)
plt.plot(X, Y3, lw=4)
 
plt.fill_between(X, Y1, Y2, color='k', alpha=.5)
plt.fill_between(X, Y1, Y3, color='y', alpha=.5)
 
plt.show()


Output:

Example 3: Color the Rhombus :-

Python3




import matplotlib.pyplot as plt
 
 
x = [1, 2, 1, 0]
y = [2, 1, 0, 1]
 
plt.fill(x, y)
plt.show()


Output:




My Personal Notes arrow_drop_up
Recommended Articles
Page :

Start Your Coding Journey Now!