To draw or to enable the 3d plots you just need to import the mplot3d toolkit.
There is a function named ax.contour3D() that is used to create a three-dimensional contour plot.
This function requires all the input data to be in the form of two-dimensional regular grids, with its Z-data evaluated at each point.
3D Contour Plot Example
In the example given below, we will create a 3-dimensional contour plot for the sine function. The code snippet is as given below:
from mpl_toolkits import mplot3d
import numpy as np
import matplotlib.pyplot as plt
from matplotlib import cm
import math
x = [i for i in range(0, 200, 100)]
y = [i for i in range(0, 200, 100)]
X, Y = np.meshgrid(x, y)
Z = []
for i in x:
t = []
for j in y:
t.append(math.sin(math.sqrt(i*2+j*2)))
Z.append(t)
fig = plt.figure()
ax = plt.axes(projection='3d')
ax.contour3D(X, Y, Z, 50, cmap=cm.cool)
ax.set_xlabel('a')
ax.set_ylabel('b')
ax.set_zlabel('c')
ax.set_title('3D contour Plot for sine')
plt.show()
The explanation of the functions used in the above code is as follows:
- meshgridThis is a function of NumPy library that is used to create a rectangular grid out of two given one-dimensional arrays representing the Cartesian or Matrix indexing.
- plt.axes()This function is used to create the object of the Axes.
- ax.contour3DThis function is used to create contour
- ax.set_xlabelThis function is used to set the label for the x-axis
- ax.set_title()This function is used to provide a title to the Plot
Following will be the output of the above code:

