import numpy as np                              #importation module numpy et simplification en np#
import matplotlib.pyplot as plt                 #importation module matplotlib et simplification en plt#
from scipy import stats                         #charge la fonction stats du module scipy#

mesures = np.loadtxt('Conducteur Pt1000 donnees complet.csv',delimiter=';',skiprows=2)        #création variable mesures coorespondnat aux données du fichier platine.csv espacées d'un ; et à partir de la troisiéme ligne (notée 2)#

R=mesures[:,0]                             #lecture de la résistance colonne 0 (premiere colonne) du fichier Conducteur Pt1000 donnees complet.csv# 
T=mesures[:,1]                             #lecture de la tempérture colonne 1 (deuxieme colonne) du fichier Conducteur Pt1000 donnees complet.csv#
axes = plt.axes()
axes.grid()                                                         #dessiner une grille pour une meilleure lisibilité du graphe#

plt.scatter(R,T,s=100,c = 'red',marker= '+')                        #affiche un nuage de points rouges de taille 100#
plt.title("Courbe T=f(R) température en fonction de la résistance") #affiche le titre#
plt.xlabel("R(ohms)")                                               #affiche un commentaire sur l'axe des abscisses#
plt.ylabel("T(°C)")                                                 #affiche un commentaire sur l'axe des abscisses#

a, b, r, d, e = stats.linregress(R,T)   # a = coefficient directeur de la droite qui passe au plus près de tous les points,b : ordonnée à l'origine,r = coefficient de corrélation#
plt.plot(R,a*R+b,c='b')                 # tracé de la droite de modélisation de coefficient directeur a et d'ordonnée à l'origine b"

print('la relation mathématique entre R et T est : T =',round(a,3),'x R ',round(b,1))

plt.show()                                          #affichage du graphique

    
