Plotting 3D scatter plots
In this recipe, we will learn how to plot 3D scatterplots and visualize them in three dimensions.
How to do it…
Create a new Python file, and import the following packages:
import numpy as np import matplotlib.pyplot as plt from mpl_toolkits.mplot3d import Axes3D
Create the empty figure:
# Create the figure fig = plt.figure() ax = fig.add_subplot(111, projection='3d')
Define the number of values that we should generate:
# Define the number of values n = 250
Create a
lambda
function to generate values in a given range:# Create a lambda function to generate the random values in the given range f = lambda minval, maxval, n: minval + (maxval - minval) * np.random.rand(n)
Generate X, Y, and Z values using this function:
# Generate the values x_vals = f(15, 41, n) y_vals = f(-10, 70, n) z_vals = f(-52, -37, n)
Plot these values:
# Plot the values ax.scatter(x_vals, y_vals, z_vals, c='k', marker='o') ax.set_xlabel('X axis') ax.set_ylabel('Y axis') ax.set_zlabel('Z axis') plt.show...