Créer des graphiques polaires avec Matplotlib

PythonPythonBeginner
Pratiquer maintenant

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

💡 Ce tutoriel est traduit par l'IA à partir de la version anglaise. Pour voir la version originale, vous pouvez cliquer ici

Introduction

Matplotlib est une bibliothèque Python utilisée pour créer des visualisations statiques, animées et interactives en Python. L'une des principales fonctionnalités de Matplotlib est sa capacité à créer des graphiques 2D et 3D de tous types et de tous styles, y compris des graphiques de dispersion, des graphiques en ligne et des diagrammes en barres. Dans ce laboratoire, vous allez apprendre à créer une courbe polaire dans un rectangle à 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 de notes 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 des commentaires après la session, et nous résoudrons rapidement le problème pour vous.

Importation des bibliothèques requises

Dans cette étape, nous allons importer les bibliothèques requises pour créer la courbe polaire. Nous utiliserons numpy pour les calculs numériques et matplotlib pour créer le graphique.

import matplotlib.pyplot as plt
import numpy as np

Définir les axes polaires

Dans cette étape, nous allons définir les axes polaires et définir le facteur d'échelle. Nous utiliserons PolarAxes.PolarTransform() pour définir les axes polaires.

from matplotlib.projections import PolarAxes
from matplotlib.transforms import Affine2D

## Définir les axes polaires
tr = Affine2D().scale(np.pi / 180., 1.) + PolarAxes.PolarTransform()

Définir l'aide à la grille

Dans cette étape, nous allons définir l'aide à la grille qui sera utilisée pour créer la courbe polaire. Nous utiliserons GridHelperCurveLinear pour définir l'aide à la grille.

from mpl_toolkits.axisartist import GridHelperCurveLinear, HostAxes
import mpl_toolkits.axisartist.angle_helper as angle_helper

## Définir l'aide à la grille
extreme_finder = angle_helper.ExtremeFinderCycle(20,
                                                 20,
                                                 lon_cycle=360,
                                                 lat_cycle=None,
                                                 lon_minmax=None,
                                                 lat_minmax=(0, np.inf),
                                                 )
grid_locator1 = angle_helper.LocatorDMS(12)
tick_formatter1 = angle_helper.FormatterDMS()

grid_helper = GridHelperCurveLinear(tr,
                                    extreme_finder=extreme_finder,
                                    grid_locator1=grid_locator1,
                                    tick_formatter1=tick_formatter1
                                    )

Créer les axes hôtes

Dans cette étape, nous allons créer les axes hôtes et définir l'aide à la grille. Nous utiliserons fig.add_subplot() pour créer les axes hôtes.

## Créer les axes hôtes
fig = plt.figure(figsize=(5, 5))
ax1 = fig.add_subplot(axes_class=HostAxes, grid_helper=grid_helper)

Créer des axes flottants

Dans cette étape, nous allons créer deux axes flottants qui seront utilisés pour afficher la courbe polaire dans un rectangle. Nous utiliserons new_floating_axis() pour créer les axes flottants.

## Créer les axes flottants
ax1.axis["lat"] = axis = ax1.new_floating_axis(0, 60)
axis.label.set_text(r"$\theta = 60^{\circ}$")
axis.label.set_visible(True)

ax1.axis["lon"] = axis = ax1.new_floating_axis(1, 6)
axis.label.set_text(r"$r = 6$")

Définir les limites et afficher la grille

Dans cette étape, nous allons définir les limites des axes et afficher la grille. Nous utiliserons set_aspect() pour définir le rapport d'aspect des axes et grid() pour afficher la grille.

## Définir les limites et afficher la grille
ax1.set_aspect(1.)
ax1.set_xlim(-5, 12)
ax1.set_ylim(-5, 10)
ax1.grid(True)

Afficher la courbe polaire

Dans cette étape, nous allons afficher la courbe polaire dans le rectangle. Nous utiliserons plt.show() pour afficher la figure.

## Afficher la courbe polaire
plt.show()

Sommaire

Dans ce laboratoire, vous avez appris à créer une courbe polaire dans un rectangle à l'aide de Matplotlib. Vous avez appris à définir les axes polaires et l'aide à la grille, créer les axes hôtes, créer les axes flottants, définir les limites, afficher la grille et afficher la courbe polaire. Grâce à ces connaissances, vous pouvez créer une grande variété de courbes polaires dans des rectangles à l'aide de Matplotlib.