Étant donné un tracé du signal dans la représentation temporelle, comment tracer des lignes marquant l'indice de temps correspondant?
Plus précisément, étant donné un tracé de signal avec un indice de temps allant de 0 à 2,6 (s), je veux tracer des lignes rouges verticales indiquant l'indice de temps correspondant pour la liste [0.22058956, 0.33088437, 2.20589566]
, comment puis-je le faire?
la source
ax
est l'objet,ax.axvline(x=0.220589956)
semble alors fonctionner pour moi.plt.plot((x1,x2),(y1,y2))
Pour plusieurs lignes
la source
label='label'
fait le travail mais vous devez appelerplt.legend([options])
plus tardSi quelqu'un veut ajouter un
legend
et / oucolors
à certaines lignes verticales, utilisez ceci:Résultats:
la source
Appeler axvline en boucle, comme d'autres l'ont suggéré, fonctionne, mais peut être gênant car
Au lieu de cela, vous pouvez utiliser les fonctions de commodité suivantes qui créent toutes les lignes comme un seul objet de tracé:
la source
En plus du
plt.axvline
etplt.plot((x1, x2), (y1, y2))
OUplt.plot([x1, x2], [y1, y2])
comme indiqué dans les réponses ci-dessus, on peut également utiliserpour tracer une ligne verticale au niveau
x_pos
allant dey1
à ,y2
où les valeursy1
ety2
sont en coordonnées de données absolues.la source