Introduction
Dans Matplotlib, patheffects peut être utilisé pour modifier la manière dont les chemins sont tracés. TickedStroke est un type de patheffect qui trace des lignes avec un style rayé. Ce tutoriel vous guidera tout au long des étapes de création de TickedStroke dans Matplotlib.
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 Carnet d'adresses 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.
Application de TickedStroke aux chemins
Dans cette étape, nous allons appliquer TickedStroke aux chemins.
import matplotlib.pyplot as plt
import matplotlib.patches as patches
import matplotlib.path as path
import matplotlib.patheffects as patheffects
fig, ax = plt.subplots(figsize=(6, 6))
path = path.Path.unit_circle()
patch = patches.PathPatch(path, facecolor='none', lw=2, path_effects=[
patheffects.withTickedStroke(angle=-90, spacing=10, length=1)])
ax.add_patch(patch)
ax.axis('equal')
ax.set_xlim(-2, 2)
ax.set_ylim(-2, 2)
plt.show()
Ce code créera un cercle unitaire avec l'effet de tracé rayé TickedStroke.
Application de TickedStroke aux lignes
Dans cette étape, nous allons appliquer TickedStroke aux lignes.
fig, ax = plt.subplots(figsize=(6, 6))
ax.plot([0, 1], [0, 1], label="Ligne",
path_effects=[patheffects.withTickedStroke(spacing=7, angle=135)])
nx = 101
x = np.linspace(0.0, 1.0, nx)
y = 0.3*np.sin(x*8) + 0.4
ax.plot(x, y, label="Courbe", path_effects=[patheffects.withTickedStroke()])
ax.legend()
plt.show()
Ce code créera une ligne et une courbe avec l'effet de tracé rayé TickedStroke.
Application de TickedStroke aux graphes de courbes de niveau
Dans cette étape, nous allons appliquer TickedStroke aux graphes de courbes de niveau.
fig, ax = plt.subplots(figsize=(6, 6))
nx = 101
ny = 105
## Configurez les vecteurs de mesure
xvec = np.linspace(0.001, 4.0, nx)
yvec = np.linspace(0.001, 4.0, ny)
## Configurez les matrices de mesure. Conceptez la charge surfacique et le rapport d'engrenage.
x1, x2 = np.meshgrid(xvec, yvec)
## Évaluez certaines choses à tracer
obj = x1**2 + x2**2 - 2*x1 - 2*x2 + 2
g1 = -(3*x1 + x2 - 5.5)
g2 = -(x1 + 2*x2 - 4.5)
g3 = 0.8 + x1**-3 - x2
cntr = ax.contour(x1, x2, obj, [0.01, 0.1, 0.5, 1, 2, 4, 8, 16],
colors='black')
ax.clabel(cntr, fmt="%2.1f", use_clabeltext=True)
cg1 = ax.contour(x1, x2, g1, [0], colors='sandybrown')
plt.setp(cg1.collections,
path_effects=[patheffects.withTickedStroke(angle=135)])
cg2 = ax.contour(x1, x2, g2, [0], colors='orangered')
plt.setp(cg2.collections,
path_effects=[patheffects.withTickedStroke(angle=60, length=2)])
cg3 = ax.contour(x1, x2, g3, [0], colors='mediumblue')
plt.setp(cg3.collections,
path_effects=[patheffects.withTickedStroke(spacing=7)])
ax.set_xlim(0, 4)
ax.set_ylim(0, 4)
plt.show()
Ce code créera un graphe de courbes de niveau avec l'effet de tracé rayé TickedStroke.
Direction/sens des traits de cote
Dans cette étape, nous allons changer le côté des traits de cote.
fig, ax = plt.subplots(figsize=(6, 6))
line_x = line_y = [0, 1]
ax.plot(line_x, line_y, label="Ligne",
path_effects=[patheffects.withTickedStroke(spacing=7, angle=135)])
ax.plot(line_x, line_y, label="Côté opposé",
path_effects=[patheffects.withTickedStroke(spacing=7, angle=-135)])
ax.legend()
plt.show()
Ce code créera une ligne avec des traits de cote des deux côtés.
Sommaire
Ce tutoriel a montré comment créer TickedStroke dans Matplotlib. En suivant ces étapes, vous pouvez appliquer TickedStroke à des chemins, des lignes et des graphes de courbes de niveau. Vous pouvez également ajuster la direction/côté des traits de cote.