Le traitement des données et leur visualisation sont des aspects essentiels de la science et de l’ingénierie. Pyqtgraph est un outil puissant qui permet aux utilisateurs de créer des graphiques et des visualisations complexes à partir de leurs données. Cet article explorera les fonctionnalités de Pyqtgraph et comment elles peuvent être utilisées pour créer des graphiques et des visualisations mathématiques. Nous examinerons également comment Pyqtgraph peut être utilisé pour créer des applications interactives et des visualisations en temps réel.
PyQt + PyqtGraph : afficher des graphiques et des courbes

Tracé de courbes simples
Les bases
- Afficher et paramétrer un graphique pyqtgraph vide dans une interface Qt
- Afficher une courbe simple dans un graphique pyqtgraph
- Afficher et paramétrer un graphique pyqtgraph vide dans une interface Qt avec widgets de paramétrage des axes
- Paramétrer l’affichage des points d’une courbe dans un graphique pyqtgraph
- Interagir avec une courbe d’un graphique pyqtgraph à l’aide de sliders (tuto)
Affichages de courbes y=f(x)
- Afficher une courbe de 1000 valeurs aléatoires simulant une série de données (tuto)
- Afficher/masquer plusieurs courbes simples dans un graphique pyqtgraph, sélectionnables par case à cocher
- Afficher une courbe à partir d’une série de valeurs chargées à partir d’un fichier texte ou saisies dans une zone texte, enregistrables dans un fichier texte. (tuto)
- Définir la courbe à tracer à partir d’une formule saisie en zone texte, et enregistrer données dans fichier
Exemples de courbes mathématiques
- Autour de la loi du corps Noir
- Afficher la courbe du corps noir et la paramétrer à l’aide d’un slider
- Afficher simultanément la loi du corps Noir et la loi de Wien reliant le maxima d’émission à la température
- Pyduino : thermostat de Planck : afficher la loi du corps noir en fonction de l’état d’un potentiomètre
Affichage de courbes paramétriques y=f(t) et x=f(t)
- Affichage d’une courbe paramétrique d’exemple
- Exemple de courbe réelle : Courbe de l’analemna
Paramétrage de l’interactivité du graphique
Le clic droit sur le graphique pyqtgraph permet l’export immédiat aux formats *.svg, *.png et même Matplotlib du graphique courant !! Il est donc incroyablement simple de réutiliser un graphique pyqtgraph obtenu par calcul !
Doc
- L’interactivité par défaut
- Description du menu contextuel par défaut et des options disponibles
Codes
- Exemple d’interactivité prédéfinie : voir Afficher une courbe simple dans un graphique pyqtgraph
- Afficher et paramétrer un graphique pyqtgraph vide dans une interface Qt avec widgets de paramétrage des axes
- Afficher le point courant d’une courbe y=f(x) sous le curseur de la souris
- Afficher une croix de lignes sous la souris ainsi que le point courant d’une courbe
- Récupérer la valeur et dessiner le point courant lors d’un clic souris
Tracé de courbes « temps réel »
Simple
- Affichage progressif d’une courbe
- Affichage progressif d’une courbe avec widget de paramétrage des axes et de réinitialisation
- Affichage progressif d’une courbe avec bouton de stop et bouton de réglage de la vitesse, widget LCD valeur courante
- Affichage progressif d’une courbe bouton de stop, réglage vitesse, widget LCD valeur, valeur courante sous curseur et croix de lignes
- Affichage progressif de 6 courbes dans un même graphique avec widget d’affichage/masquage
- Affichage progressif de 6 courbes dans 6 graphiques différents
Pyduino
- Oscilloscope basse fréquence monovoie
- Oscilloscope basse fréquence monovoie avec widgets de réglage, bouton de stop, widget LCD valeur, croix de lignes de sélection TOP !
- Oscilloscope basse fréquence 6 voies sur 1 graphique
- Oscilloscope basse fréquence 6 voies sur 6 graphiques
Port Série (Arduino)
Avec Pyqtgraph (recommandé)
- Afficher une courbe à partir de valeurs reçues sur le port série (oscillo simple) *
- Afficher une courbe à partir de valeurs reçues sur le port série, avec widgets de paramétrage des axes
- Idem avec affichage de la valeur courante et conversion en unité voulue
- Idem avec option de tracé d’une croix de lignes et du point courant
- Idem multicourbe sur le même graphe
- Idem multicourbe sur n courbes
Avec PyQwt (obsolète)
- Afficher une courbe à partir de valeurs reçues sur le port série (oscillo simple) *
- Afficher une courbe à partir de valeurs reçues sur le port série, avec widgets de paramétrage des axes *
- Idem avec affichage de la valeur courante et conversion en unité voulue
- Idem avec option de tracé d’une croix de lignes et du point courant
- Idem multicourbe sur le même graphe
- Idem multicourbe sur n courbes
Console intégrée
- Interface PyQt intégrant graphique pyqtgraph et console dans une même GUI pour interactivité « en direct » avec le graphique*
Tracé de courbes avec timeline
- Créer un graphique avec une timeline interactive
- Créer un graphique avec une timeline interactive à partir d’un fichier de données
- Affichage progressif d’une courbe dans une timeline et affichage de la zone sélectionnée
Images simples avec pyqtgraph
- Affichage d’une image simple
- Création d’une image telle que i=f(x,y)
Images avec widgets pyqtgraph
Images et ROI
Tracé d’images « temps-réel » ou animées
- Affichage animé d’une image telle que i=f(x,y)
Articles similaires:
- http://web.archive.org/web/20210804223007/http://www.mon-club-elec.fr/pmwiki_mon_club_elec/pmwiki.php?n=MAIN.PYQTGraphMathPyqtgraph
- http://web.archive.org/web/20210804223007/http://www.mon-club-elec.fr/pmwiki_mon_club_elec/pmwiki.php?n=MAIN.PYQTLABGraphMath
- http://web.archive.org/web/20210804223007/http://www.mon-club-elec.fr/pmwiki_mon_club_elec/pmwiki.php?n=MAIN.CODERJS
- http://web.archive.org/web/20210804223007/http://www.mon-club-elec.fr/pmwiki_mon_club_elec/pmwiki.php?n=MAIN.PYQTGraphMath
- http://web.archive.org/web/20210804223007/http://www.mon-club-elec.fr/pmwiki_mon_club_elec/pmwiki.php?n=MAIN.CODERJQUERY
Articles Liés
- http://web.archive.org/web/20210804223007/http://www.mon-club-elec.fr/pmwiki_mon_club_elec/pmwiki.php?n=MAIN.ARDUINOINSTALLATIONRaisonsChoix
L'Arduino est un système de prototypage électronique open source qui permet aux utilisateurs de créer…
- http://web.archive.org/web/20210804223007/http://www.mon-club-elec.fr/pmwiki_mon_club_elec/pmwiki.php?n=MAIN.CODERLangageArduinoStrategiesTemporisation
Le langage Arduino est un langage de programmation open source qui permet aux développeurs de…
- http://web.archive.org/web/20210804223007/http://www.mon-club-elec.fr/pmwiki_mon_club_elec/pmwiki.php?n=MAIN.GLAPBOXMaterielAssemblageTest
L'assemblage et le test de matériel électronique sont des étapes essentielles pour la fabrication de…