Introduction
Ce tutoriel est conçu pour guider les utilisateurs sur la manière de créer des cercles, des segments de cercle et des polygones à l'aide de Python Matplotlib. Les utilisateurs pourront également utiliser .collections.PatchCollection pour visualiser les formes créées.
Conseils sur la machine virtuelle
Une fois le démarrage de la machine virtuelle terminé, cliquez sur le coin supérieur gauche pour basculer vers l'onglet Notebook pour accéder à Jupyter Notebook pour pratiquer.
Parfois, vous devrez peut-être attendre quelques secondes pour que Jupyter Notebook ait fini de charger. La validation des opérations ne peut pas être automatisée en raison des limitations de Jupyter Notebook.
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.
Importez les bibliothèques nécessaires
Tout d'abord, nous devons importer les bibliothèques nécessaires.
import matplotlib.pyplot as plt
import numpy as np
from matplotlib.collections import PatchCollection
from matplotlib.patches import Circle, Polygon, Wedge
Créez une figure et un axe
Nous créons une figure et un axe pour tracer les formes.
fig, ax = plt.subplots()
Définissez le nombre de sommets et le nombre de formes
Nous définissons le nombre de sommets et le nombre de formes à créer.
resolution = 50 ## le nombre de sommets
N = 3
Créez des cercles
Nous créons des cercles à l'aide de Circle() et les ajoutons à une liste de patches.
x = np.random.rand(N)
y = np.random.rand(N)
radii = 0.1*np.random.rand(N)
patches = []
for x1, y1, r in zip(x, y, radii):
circle = Circle((x1, y1), r)
patches.append(circle)
Créez des segments circulaires
Nous créons des segments circulaires à l'aide de Wedge() et les ajoutons à la liste de patches.
x = np.random.rand(N)
y = np.random.rand(N)
radii = 0.1*np.random.rand(N)
theta1 = 360.0*np.random.rand(N)
theta2 = 360.0*np.random.rand(N)
for x1, y1, r, t1, t2 in zip(x, y, radii, theta1, theta2):
wedge = Wedge((x1, y1), r, t1, t2)
patches.append(wedge)
Ajoutez des conditions limites aux segments circulaires
Nous ajoutons des conditions limites aux segments circulaires.
patches += [
Wedge((.3,.7),.1, 0, 360), ## Cercle complet
Wedge((.7,.8),.2, 0, 360, width=0.05), ## Bague complète
Wedge((.8,.3),.2, 0, 45), ## Secteur complet
Wedge((.8,.3),.2, 45, 90, width=0.10), ## Secteur de bague
]
Créez des polygones
Nous créons des polygones à l'aide de Polygon() et les ajoutons à la liste de patches.
for i in range(N):
polygon = Polygon(np.random.rand(N, 2), closed=True)
patches.append(polygon)
Définissez les couleurs et créez une PatchCollection
Nous définissons les couleurs des formes et créons une PatchCollection().
colors = 100 * np.random.rand(len(patches))
p = PatchCollection(patches, alpha=0.4)
p.set_array(colors)
ax.add_collection(p)
fig.colorbar(p, ax=ax)
Affichez la figure
Nous affichons la figure.
plt.show()
Sommaire
Ce tutoriel a montré comment créer des cercles, des segments circulaires et des polygones à l'aide de Python Matplotlib. Nous avons également appris à utiliser .collections.PatchCollection pour visualiser les formes créées.