Bonjour

Dans mon programme de récupération de données issues de la liaison série avec Arduino, j'obtiens 2 listes (temps et tension) que je souhaite afficher sous forme de graphique.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
# coding: utf8
 
# Importation des modules utilisés
import serial
import time
import matplotlib.pyplot as plt
 
 
# Initialisation des variables
arduino = None
rawdata = []
nbrPoints = 0
tension = []
temps = []
 
def acuisition(nbrPoints):
    # Ouverture de la liaison série
    try:
        arduino = serial.Serial("COM3", baudrate=250000, timeout=3)
    except Exception as e:
        print("Vérifier le port série:", e)
        return
 
    time.sleep(1)
    periode=input("Saisir la période d'échantillonnage (en ms) : ")
    arduino.write(periode.encode("ascii"))
    duree=input("Saisir la durée totale (en ms) : ")
    arduino.write(duree.encode("ascii"))
    acquisition=input("Saisir S pour lancer l'acquisition")
    arduino.write(acquisition.encode("ascii"))
 
    nbrPoints=int(duree)//int(periode)
 
    # Réception et stockage des données
    print("Début de l'acquisition...")
    compt = 0
    while compt < nbrPoints:
        data_read = arduino.readline().decode()[:-2]
        rawdata.append(data_read)
        print(compt, rawdata[compt], sep=" - ")
        compt += 1
    print("Fin de l'acquisition.")
 
    for val in rawdata:
        temps.append(val[:5])
        tension.append(val[6:])
 
acuisition(nbrPoints)
#print("\nrawdata:", rawdata, "\ntaille:", len(rawdata))
print(temps)
print(tension)
Lorsque j'importe (de manière classique)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
import matplotlib.pyplot as plt
j'obtiens le message d'erreur
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
Traceback (most recent call last):
  File "C:\EduPython\App\Lib\rpyc.zip\rpyc\core\stream.py", line 214, in read
ConnectionResetError: [WinError 10054] Une connexion existante a dû être fermée par l’hôte distant
 
During handling of the above exception, another exception occurred:
 
Traceback (most recent call last):
  File "C:\EduPython\App\Lib\rpyc.zip\rpyc\core\protocol.py", line 406, in poll
  File "C:\EduPython\App\Lib\rpyc.zip\rpyc\core\protocol.py", line 387, in serve
  File "C:\EduPython\App\Lib\rpyc.zip\rpyc\core\channel.py", line 50, in recv
  File "C:\EduPython\App\Lib\rpyc.zip\rpyc\core\stream.py", line 223, in read
EOFError: [WinError 10054] Une connexion existante a dû être fermée par l’hôte distant
L'erreur vient, à priori de pyplot car quand j'importe uniquement matplotlib, je n'ai pas ce souci.

De même, quand je n'importe que matplotlib mais que je souhaite afficher mon graphique avec le code
Code : Sélectionner tout - Visualiser dans une fenêtre à part
plt.pyplot.plot(temps, tension)
j'obtiens le message d'erreur 10053
Une connexion établie a été abandonnée par un logiciel de votre ordinateur hôte
Merci pour votre aide