Histogramme 3D avec Matplotlib

Beginner

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

Introduction

Dans ce laboratoire, vous allez apprendre à créer un histogramme 3D de données 2D à l'aide de Python Matplotlib. Un histogramme est une représentation graphique des données qui regroupe une plage de valeurs en classes, et l'histogramme 3D étend ce concept en ajoutant une troisième dimension à la visualisation.

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 pouvoir créer l'histogramme 3D, nous devons importer les bibliothèques nécessaires. Dans ce cas, nous allons utiliser NumPy et Matplotlib.

import matplotlib.pyplot as plt
import numpy as np

Générer des données

Ensuite, nous allons générer quelques données aléatoires 2D pour l'histogramme. Nous utiliserons la fonction random.rand() de NumPy pour générer 100 valeurs aléatoires pour les variables x et y.

## Fixing random state for reproducibility
np.random.seed(19680801)

x, y = np.random.rand(2, 100) * 4

Créer l'histogramme

Maintenant que nous avons nos données, nous pouvons créer l'histogramme 3D. Nous utiliserons la fonction histogram2d() de NumPy pour créer un histogramme 2D de nos données, puis la fonction bar3d() de Matplotlib pour créer un graphique en barres 3D de l'histogramme.

hist, xedges, yedges = np.histogram2d(x, y, bins=4, range=[[0, 4], [0, 4]])

## Construire des tableaux pour les positions d'ancrage des 16 barres.
xpos, ypos = np.meshgrid(xedges[:-1] + 0.25, yedges[:-1] + 0.25, indexing="ij")
xpos = xpos.ravel()
ypos = ypos.ravel()
zpos = 0

## Construire des tableaux avec les dimensions pour les 16 barres.
dx = dy = 0.5 * np.ones_like(zpos)
dz = hist.ravel()

ax.bar3d(xpos, ypos, zpos, dx, dy, dz, zsort='average')

Afficher l'histogramme

Enfin, nous pouvons afficher l'histogramme à l'aide de la fonction show() de Matplotlib.

plt.show()

Sommaire

Dans ce laboratoire, vous avez appris à créer un histogramme 3D de données 2D à l'aide de Python Matplotlib. Vous avez également appris à générer des données aléatoires, à créer un histogramme 2D et à créer un graphique en barres 3D de l'histogramme. En suivant ces étapes, vous pouvez créer vos propres histogrammes 3D pour visualiser vos propres données.