Graphiques 3D en tant que sous-graphiques

Beginner

This tutorial is from open-source community. Access the source code

Introduction

En analyse de données, il est souvent nécessaire de créer des graphiques 3D pour visualiser les données. Dans Matplotlib, nous pouvons créer des graphiques 3D en tant que sous-graphiques pour comparer différents ensembles de données 3D. Ce laboratoire démontrera comment créer des graphiques 3D en tant que sous-graphiques à l'aide de Matplotlib.

Conseils sur la machine virtuelle

Une fois le démarrage de la machine virtuelle terminé, cliquez dans le coin supérieur gauche pour basculer vers l'onglet Carnet d'étude pour accéder au carnet Jupyter pour pratiquer.

Parfois, vous devrez peut-être attendre quelques secondes pour que le carnet Jupyter ait fini de charger. La validation des opérations ne peut pas être automatisée en raison des limitations du carnet Jupyter.

Si vous rencontrez des problèmes pendant l'apprentissage, n'hésitez pas à demander à Labby. Donnez votre feedback après la session, et nous résoudrons rapidement le problème pour vous.

Importation des bibliothèques

Avant de commencer, nous devons importer les bibliothèques que nous utiliserons dans ce laboratoire. Nous utiliserons Matplotlib, NumPy et Axes3D de mpl_toolkits.mplot3d.

import matplotlib.pyplot as plt
import numpy as np
from mpl_toolkits.mplot3d import Axes3D

Créer la figure et les sous-graphiques

Nous allons créer une figure avec deux sous-graphiques. Le premier sous-graphique sera un graphique de surface 3D, et le second sous-graphique sera un graphique en maillage 3D.

## Create a figure with two subplots
fig = plt.figure(figsize=plt.figaspect(0.5))

## Add the first subplot with 3D projection
ax1 = fig.add_subplot(1, 2, 1, projection='3d')

## Add the second subplot with 3D projection
ax2 = fig.add_subplot(1, 2, 2, projection='3d')

Créer le graphique de surface 3D

Nous allons créer un graphique de surface 3D pour le premier sous-graphique. Nous utiliserons NumPy pour créer les données du graphique.

## Create data for the 3D surface plot
X = np.arange(-5, 5, 0.25)
Y = np.arange(-5, 5, 0.25)
X, Y = np.meshgrid(X, Y)
R = np.sqrt(X**2 + Y**2)
Z = np.sin(R)

## Plot the 3D surface plot
surf = ax1.plot_surface(X, Y, Z, cmap='coolwarm', linewidth=0, antialiased=False)

## Add a color bar to the plot
fig.colorbar(surf, shrink=0.5, aspect=10)

## Set the limits for the z-axis
ax1.set_zlim(-1.01, 1.01)

Créer le graphique en maillage 3D

Nous allons créer un graphique en maillage 3D pour le second sous-graphique. Nous utiliserons la fonction get_test_data de mpl_toolkits.mplot3d.axes3d pour créer les données du graphique.

## Create data for the 3D wireframe plot
X, Y, Z = Axes3D.get_test_data(0.05)

## Plot the 3D wireframe plot
ax2.plot_wireframe(X, Y, Z, rstride=10, cstride=10)

Afficher le graphique

Nous utiliserons la fonction plt.show() pour afficher le graphique.

plt.show()

Récapitulatif

Dans ce laboratoire, nous avons appris à créer des graphiques 3D en tant que sous-graphiques à l'aide de Matplotlib. Nous avons créé une figure avec deux sous-graphiques, un graphique de surface 3D et un graphique en maillage 3D. Nous avons utilisé NumPy pour créer les données du graphique de surface 3D et la fonction get_test_data de mpl_toolkits.mplot3d.axes3d pour créer les données du graphique en maillage 3D. Nous avons également ajouté une barre de couleur au graphique de surface 3D et défini les limites de l'axe z.