########### début de la programmation python ###########################
import numpy as np # importe la bibliothèque numpy et la renome np
import matplotlib.pyplot as plt # importe le module pyplot et le renome plt
####### COLLER LES LISTES DE VALEURS ISSUES DE MECACHRONO SOUS CETTE LIGNE #############
t = [ 0.32, 0.44, 0.56, 0.68, 0.8, 0.92, 1.04, 1.16]
x = [5.81257, 5.24495, 4.71694, 4.16252, 3.62131, 3.09329, 2.56528, 2.02406]
y = [3.72571, 4.37252, 4.90054, 5.27015, 5.45495, 5.54736, 5.42855, 5.32295]
###########################################################################
print(type(y))
print("Abscisses x en m :",x)
print("Ordonnées y en m :",y)
#affiche le nuage de points de taille 50, de couleur rouge et sous forme de croix"
plt.scatter(x,y,s=80,c = 'red',marker= '+')
#affiche un repère othonormal avec les min et et les max des axes
plt.axis([0,6,0,7])
plt.grid() # Trace une grille
plt.title("Trajectoire du système") # Affiche le titre
plt.xlabel('abcisse x') # Affiche un commentaire sur l'axe des abscisses
plt.ylabel('ordonnée y') # Affiche un commentaire sur l'axe des ordonnées
echelle = 0.06 # on definit une échelle pour les vecteurs.
# LIGNES SUIVANTES À EXPLIQUER ######On enlève la dernière valeur dont on ne peut calculer la vitesse
m=len(t)-1
for i in range(m) : # de i à m ( m étant d'après la ligne précédente, le nombre de valeurs de temps - 1 )
plt.arrow(x[i],y[i],echelle*(x[i+1]-x[i])/(t[i+1]-t[i]), # au point Mi de coordonnées x[i],y[i], tracer le vecteur vitesse ...
echelle*(y[i+1]-y[i])/(t[i+1]-t[i]),head_width=0.08) # grâce à ses coordonnées vx et vy : Voir docs 2 et 3
plt.title("Trajectoire du système avec les vecteurs vitesses") # Affiche le titre
plt.xlabel('abcisse x') # Affiche un commentaire sur l'axe des abscisses
plt.ylabel('ordonnée y') # Affiche un commentaire sur l'axe des ordonnées
plt.show() # Montre le graphique à l'écran