Python

Comment utiliser PyQtGraph?

Comment utiliser PyQtGraph?

Les tâches de visualisation scientifique ou numérique peuvent être effectuées en python facilement à l'aide de diverses bibliothèques Python, telles que Plotly, Matplotlib, Seaborn, ggplot, PyQt, etc. PyQtGraph est un module utile de la PyQt bibliothèque pour créer un graphique. Ce module peut créer des graphiques très rapidement. Des graphiques 2D et 3D peuvent être créés en utilisant ce module. Comment utiliser le PyQtGraph module pour dessiner différents types de graphiques a montré dans ce tutoriel.

Conditions préalables

Vous devez installer le module PyQtGraph dans votre système avant de créer le graphique. Exécutez la commande suivante pour installer PyQtGraph en utilisant pip3.

$ sudo pip3 installer pyqtgraph

Tracer un graphique linéaire

Un graphique en courbes ou un graphique en courbes est un graphique qui affiche des informations à l'aide d'une série de tracés de données. PlotWidget widget est utilisé pour créer tous les graphiques de PyQtGraph. Ce widget contient un canevas sur lequel n'importe quel tracé peut être ajouté ou supprimé.

Exemple 1 : Dessiner un graphique linéaire simple

Le script suivant montre comment tracer un graphique linéaire en utilisant des nombres aléatoires. intervalle() la fonction est utilisée pour générer 10 nombres séquentiels qui sont utilisés pour les valeurs de l'axe des x. le Aléatoire module de python est utilisé pour générer 10 nombres entiers aléatoires utilisés pour les valeurs de l'axe des y. parcelle() méthode est utilisée pour tracer chaque tracé du graphique linéaire en fonction des valeurs de l'axe des x et de l'axe des y. Lorsque le code est exécuté en mode interactif, alors système.drapeaux.interactif le drapeau sera Vrai. Si la valeur de cet indicateur n'est pas True, cela indique que la boucle d'événements Qt n'a pas besoin de s'exécuter car le REPL (Run, Evaluate, Print, Loop) a déjà une boucle d'événements.

# Importer un module aléatoire
# Importer un module aléatoire
importer au hasard en tant que rd
# Importer le module PyQtGraph
importer pyqtgraph en tant que pg
# Importez QtGui depuis le module PyQtGraph
de pyqtgraph.Qt importer QtGui
# Générer des valeurs sur l'axe des x
x = plage (0, 10)
# Générer des valeurs sur l'axe des y
y = [ ]
pour i dans la plage (0, 10) :
n = rd.randint(0, 20)
oui.ajouter(n)
# Initialiser le tracé
plt = pg.parcelle()
# Définir l'étiquette pour l'axe x
plt.setLabel('bas', 'valeurs générées séquentiellement')
# Définir l'étiquette pour l'axe des y
plt.setLabel('gauche', 'valeurs générées aléatoirement')
# Définir la plage horizontale
plt.setXRange(0, 10)
# Définir la plage verticale
plt.setYRange(0, 20)
# Définir le titre du graphique
plt.setTitle("Graphique linéaire simple")
# Définir les valeurs du tracé
ligne = plt.tracer (x, y)
# Méthode principale
if __name__ == '__main__' :
# Importer le module sys
importer le système
# Démarrer la boucle d'événement Qt à moins qu'il ne soit exécuté en mode interactif
si sys.drapeaux.interactif != 1 :
QtGui.QApplication.exemple().exec()

Production:

Le graphique linéaire similaire suivant apparaîtra après l'exécution du script ci-dessus. Le graphique variera à chaque exécution pour les valeurs aléatoires.

Exemple 2 : Dessiner un graphique linéaire avec un style et un marqueur

Le script suivant montre comment dessiner un graphique linéaire de styliste basé sur les valeurs d'une liste python. mkPen() la fonction est utilisée pour définir la couleur et la largeur de la ligne. 'o' est utilisé comme marqueur dans le graphique, et la couleur et la largeur du marqueur sont définies en utilisant symboleStylo et symboleTaille Propriétés.

# Importer le module PyQtGraph
# Importer le module PyQtGraph
importer pyqtgraph en tant que pg
# Importez QtGui depuis le module PyQtGraph
de pyqtgraph.Qt importer QtGui
# Générer des valeurs sur l'axe des x
x = plage (0, 10)
# Générer des valeurs sur l'axe des y
y = [3, 7, 5, 11, 8, 13, 9, 16, 15, 12]
# Initialiser le tracé
plt = pg.parcelle()
# Définir l'étiquette pour l'axe x
plt.setLabel('bas', 'valeurs de l'axe X')
# Définir l'étiquette pour l'axe des y
plt.setLabel('gauche', 'valeurs de l'axe Y')
# Définir la plage horizontale
plt.setXRange(0, 10)
# Définir la plage verticale
plt.setYRange(0, 20)
# Définir le titre du graphique
plt.setTitle("Graphique linéaire avec style et marqueur")
# Définir la couleur de fond
plt.setBackground('d5ecf2')
# Définir les valeurs de tracé avec la couleur et la largeur du stylo
ligne = plt.plot(x, y, stylo=pg.mkPen('r', width=6), symbol='o', symbolPen='b', symbolSize=20)
# Ajouter une légende
plt.addLegend()
# Afficher les grilles
plt.showGrid(x=Vrai, y=Vrai)
# Méthode principale
if __name__ == '__main__' :
# Importer le module sys
importer le système
# Démarrer la boucle d'événement Qt à moins qu'il ne soit exécuté en mode interactif
si sys.drapeaux.interactif != 1 :
QtGui.QApplication.exemple().exec_()
# Méthode principale
if __name__ == '__main__' :
# Importer le module sys
importer le système
# Démarrer la boucle d'événement Qt à moins qu'il ne soit exécuté en mode interactif
si sys.drapeaux.interactif != 1 :
QtGui.QApplication.exemple().exec_()

Production:

Le graphique linéaire suivant apparaîtra après l'exécution du script ci-dessus.

Dessiner un graphique à barres

Un ensemble de données peut être visualisé à l'aide d'un graphique à barres. Une simple barre crée en comparant la liste de données avec une plage de données associée. BarGraphItem la classe est utilisée pour créer le graphique à barres en utilisant PyQtGraph.

Exemple-3 : Dessiner un graphique à barres

Le script suivant montre comment dessiner un graphique à barres basé sur les valeurs d'un tableau NumPy. BarGraphItem est utilisé pour dessiner un graphique à barres avec une couleur bleue et une valeur de largeur de 0.5.

# Importer le module PyQtGraph
# Importer le module PyQtGraph
importer pyqtgraph en tant que pg
# Importez QtGui depuis le module PyQtGraph
de pyqtgraph.Qt importer QtGui
# Importer la bibliothèque NumPy
importer numpy en tant que np
# Générer l'axe des x
x = np.range (0, 10)
# Générer l'axe des y
y = np.tableau([3, 5, 7, 9, 5, 8, 10, 6, 5, 2])
# Définir les valeurs du graphique à barres et la couleur et la largeur du pinceau
bg = pg.BarGraphItem(x=x, hauteur=y, largeur=0.5, pinceau='b')
# Définir la variable de tracé
plt = pg.parcelle()
# Définir l'étiquette pour l'axe x
plt.setLabel('bas', '

Valeurs de l'axe X

')
# Définir l'étiquette pour l'axe des y
plt.setLabel('gauche', '

Valeurs de l'axe Y

')
# Définir le titre de la barre
plt.setTitre('

Graphique à barres utilisant PyQtGraph

')
# Ajouter les éléments du graphique à barres
plt.addItem(bg)
# Méthode principale
if __name__ == '__main__' :
# Importer le module sys
importer le système
# Démarrer la boucle d'événement Qt à moins qu'il ne soit exécuté en mode interactif
si sys.drapeaux.interactif != 1 :
QtGui.QApplication.exemple().exec_()

Production:

Le graphique à barres suivant apparaîtra après l'exécution du script ci-dessus.

Conclusion

La création de trois types de graphiques différents avec des valeurs aléatoires, des éléments de liste et un tableau NumPy a été présentée dans ce didacticiel en utilisant trois exemples simples. Les lecteurs pourront utiliser le module PyQtGraph pour implémenter des graphiques à lignes et à barres après avoir lu ce tutoriel.

Ajoutez des gestes de souris à Windows 10 à l'aide de ces outils gratuits
Ces dernières années, les ordinateurs et les systèmes d'exploitation ont considérablement évolué. Il fut un temps où les utilisateurs devaient utilise...
Contrôlez et gérez le mouvement de la souris entre plusieurs moniteurs dans Windows 10
Gestionnaire de souris à double affichage vous permet de contrôler et de configurer le mouvement de la souris entre plusieurs moniteurs, en ralentissa...
WinMouse vous permet de personnaliser et d'améliorer le mouvement du pointeur de la souris sur un PC Windows
Si vous souhaitez améliorer les fonctions par défaut de votre pointeur de souris, utilisez un logiciel gratuit WinMouse. Il ajoute plus de fonctionnal...