Creating a 3D bar plot

Using several 2D layers in a 3D figure, we can plot multiple bar plots. However, we can also go full 3D and plot bar plots with actual 3D bars.

How to do it...

To demonstrate 3D bar plots, we will use the simple, synthetic dataset from the previous recipe as shown in the following code:

import numpy as np from mpl_toolkits.mplot3d import Axes3D import matplotlib.pyplot as plt # Data generation alpha = np.linspace(1, 8, 5) t = np.linspace(0, 5, 16) T, A = np.meshgrid(t, alpha) data = np.exp(-T * (1. / A)) # Plotting fig = plt.figure() ax = fig.gca(projection = '3d') Xi = T.flatten() Yi = A.flatten() Zi = np.zeros(data.size) dx = .25 * np.ones(data.size) dy = .25 * np.ones(data.size) dz = data.flatten() ax.set_xlabel('T') ax.set_ylabel('Alpha') ...

Get matplotlib Plotting Cookbook now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.