Matplotlib Quiver Plot – quiver() Function

To plot the 2D field of arrows, we use the Quiver plot in the matplotlib library.

  • This plot mainly helps in displaying the velocity vectors as arrows having components (u,v) at the points (x,y).
  • The Quiver plots are useful for Electrical engineers to visualize electrical potential and for Mechanical engineers to show stress gradients.

Creating Matplotlib Quiver Plot

In order to create a Quiver Plot the ax.quiver() function is used.

The required syntax to use this function is as follows:

ax.quiver(x_pos, y_pos, x_dir, y_dir, color) 

Following are the parameters of this function, which you can see above in the syntax:

  • x_pos and y_posThese two parameters of the function are used to indicate the starting position of the arrows.
  • x_dir and y_dirThese two parameters of the function are used to indicate the directions of the arrows.
  • colorThis parameter is used to specify the color of the Quiver Plot.

Let us now dive into some examples related to this.

Simple Quiver Plot Example:

In the example given below, we will cover how to plot a Quiver plot with a single arrow:

import numpy as np 
import matplotlib.pyplot as plt 

x_pos = 0
y_pos = 0
x_direct = 1
y_direct = 1

fig, ax = plt.subplots(figsize = (10, 7)) 
ax.quiver(x_pos, y_pos, x_direct, y_direct) 
ax.set_title('Quiver plot with a single arrow') 

plt.show() 

Here is the output:

single arrow quiver plot matplotlib example

Two Arrow Quiver Plot Example:

In the example given below, we will cover how to plot a Quiver plot with two arrows:

import numpy as np 
import matplotlib.pyplot as plt 

x_pos = [0, 0] 
y_pos = [0, 0] 
x_direct = [1, 0] 
y_direct = [1, -1] 

fig, ax = plt.subplots(figsize = (12, 7)) 
ax.quiver(x_pos, y_pos, x_direct, y_direct,scale = 8) 

ax.axis([-1.5, 1.5, -1.5, 1.5]) 

plt.show() 

Here is the output:

two arrow quiver plot matplotlib example

Time for Live Example!

Now we will cover a live example where we will draw the Quiver plot using meshgrid:

Follow Us On