Je ne comprends pas très bien pourquoi je suis incapable de créer des lignes horizontales et verticales à des limites spécifiées. Je voudrais lier les données par cette boîte. Cependant, les côtés ne semblent pas respecter mes instructions. Pourquoi est-ce?
# CREATING A BOUNDING BOX
# BOTTOM HORIZONTAL
plt.axhline(y=.4, xmin=0.25, xmax=0.402, linewidth=2, color = 'k')
# RIGHT VERTICAL
plt.axvline(x=0.402, ymin=0.4, ymax = 0.615, linewidth=2, color='k')
# LEFT VERTICAL
plt.axvline(x=0.1, ymin=0.58, ymax = 0.79, linewidth=2, color='k')
plt.show()
matplotlib
Rohit
la source
la source
hlines
ouvlines
, respectivement, car c'est plus trivial qu'unplot
imo ordinaireCela peut être un problème courant pour les nouveaux utilisateurs de Matplotlib pour dessiner des lignes verticales et horizontales. Afin de comprendre ce problème, vous devez être conscient que différents systèmes de coordonnées existent dans Matplotlib .
Les méthodes axhline et axvline sont utilisées pour tracer des lignes aux coordonnées des axes . Dans ce système de coordonnées, la coordonnée du point inférieur gauche est (0,0), tandis que la coordonnée du point supérieur droit est (1,1), quelle que soit la plage de données de votre tracé. Les deux paramètres
xmin
etxmax
sont dans la plage [0,1].D'autre part, les méthodes hlines et vlines sont utilisées pour dessiner des lignes à la coordonnée des données . La plage pour
xmin
etxmax
sont dans la plage de données limite de l'axe x.Prenons un exemple concret,
Il produira l'intrigue suivante:
La valeur de
xmin
etxmax
est la même pour la méthodeaxhline
ethlines
. Mais la longueur de la ligne produite est différente.la source
Si vous souhaitez ajouter un cadre de sélection, utilisez un rectangle:
Rectangle
docla source