bonjour à toutes et tous,
je sollicite votre aide pour un petit problème d'affichage. Pour un projet de gestion de la température d'un four d'émaillage raku, je dois gérer la montée en température du four. Jusqu'à présent, j'utilisais un multimètre en fonction thermomètre couplé à une sonde K avec un minuteur. C'est guère pratique d'autant que le thermomètre se met en veille plusieurs fois avant la fin de la cuisson.
Je veux donc travailler avec un raspberry pi 2B couplé à une sonde de même nature avec son contrôleur et j'ai un écran tactile 7" permettant l'affichage. Je vais donc acquérir régulièrement la température dans le four et je veux afficher :
- la courbe Temp(t)
- les valeurs de Temp(t) et dTemp/dt (variation en fonction du temps) dans un coin du graphique
j'ai repris un code basique trouvé sur Reddit pour afficher dynamiquement une courbe (ici sinusoïde):
je voudrais qu'à chaque tour plt soit modifié par plt.txt avec un texte mis à jour dynamiquement
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 import numpy as np import matplotlib.pyplot as plt import matplotlib.animation as animation k = 2*np.pi w = 2*np.pi dt = 0.01 xmin = 0 xmax = 3 nbx = 100 x = np.linspace(xmin, xmax, nbx) fig = plt.figure() # initialise la figure line, = plt.plot([],[]) plt.xlim(xmin, xmax) plt.ylim(-1,1) # fonction à définir quand blit=True # crée l'arrière de l'animation qui sera présent sur chaque image def init(): line.set_data([],[]) return line, def animate(i): t = i * dt y = np.cos(k*x - w*t) plt.text(0.25,0.75,str(ydata[-1])) line.set_data(x, y) return line, ani = animation.FuncAnimation(fig, animate, init_func=init, frames=100, blit=True, interval=10, repeat=False) plt.show()
Je suis preneur de toute suggestion permettant de résoudre ce problème. Merci d'avance,
PB
Partager