Le groupe Python : Module PyQtGraph

De Wiki_du_Réseau_des_Electroniciens_du_CNRS
Aller à la navigationAller à la recherche


Introduction

Le module PyQtGraph, à l'heure à laquelle j'écris cette page, fonctionne avec le Framework Qt dans sa version 4. Il nous impose d'utiliser la version d'Anaconda 4.1.1. Pourquoi tant de sacrifice pour un module de tracer ? Regardons ce qu'il nous permet de faire...

Installation

Au cas où, vous ne l'auriez pas installer, je vous renvoie à la page d'Installation

Le module PyQtGraph va plus loin que la réalisation de graphique en 2D. Si vous souhaitez voir ou mettre en œuvre un graphique 3D, il vous faudra installer le module pyopengl.

  activate py35Qt4
  pip install pyopengl

Que peut-on faire avec ce module ?

Je vous invite à regarder directement la documentation du module et plus particulièrement la section Exemples qui nous invite à lancer les commandes suivantes :

 import pyqtgraph.examples
 pyqtgraph.examples.run()

Réalisation d'un exemple

Je vous propose de créer une interface graphique en utilisant le Framework Qt dans laquelle nous intégrerons un tracé rafraichis et deux boutons pour lancer le tracé et l'arrêt.

Traçons l'interface sous Designer

  • Commençons par ouvrir Designer et dessinons notre interface.
  • Intégrons les deux boutons poussoirs et un Graphics View.

Pourquoi un Graphics View ? Dans la documentation du module PyQtGraph, tout est expliqué pour intégrer un objet graphique qui sera relié à une classe du module PyQtGrah. Rappelons ici les instructions de la documentation :

  • Clique droit sur le QGraphicsView (promouvoir en...) :
  • Ajoutons la configuration ( “Promoted class name” => “PlotWidget”, “Header file” => “pyqtgraph” ) :
  • Promouvons la QGraphicsView :
  • Agençons nos boutons poussoirs horizontalement :
  • Mettons en place une mise en page de type vertical afin que les objets graphiques s'adaptent dynamiquement à la dimension de la fenêtre :
  • La police des noms des boutons poussoirs semblent petites, nous pouvons modifier ceci dans les propriétés des deux boutons poussoirs :
  • Enregistrons notre interface sous le nom ui_testPyQtGraph

Convertissons notre interface réalisée sous Designer en un script Python