Krajta

Jak používat PyQtGraph?

Jak používat PyQtGraph?

Vědecké nebo numerické vizualizační úlohy lze v pythonu snadno provádět pomocí různých knihoven Pythonu, například Plotly, Matplotlib, Seaborn, ggplot, PyQt, atd. PyQtGraph je užitečný modul PyQt knihovna pro vytvoření grafu. Tento modul dokáže velmi rychle vytvářet grafy. Pomocí tohoto modulu lze vytvářet 2D a 3D grafiku. Jak používat PyQtGraph modul pro kreslení různých typů grafů ukázal v tomto výukovém programu.

Předpoklady

Před vytvořením grafu musíte do svého systému nainstalovat modul PyQtGraph. Spuštěním následujícího příkazu nainstalujte PyQtGraph pomocí pip3.

$ sudo pip3 nainstalujte pyqtgraph

Nakreslete spojnicový graf

Čárový graf nebo spojnicový graf je graf, který zobrazuje informace pomocí řady datových grafů. PlotWidget Widget se používá k vytváření všech grafů PyQtGraph. Tento widget obsahuje plátno, na které lze přidat nebo odebrat jakýkoli graf.

Příklad 1: Nakreslete jednoduchý spojnicový graf

Následující skript ukazuje způsob, jak nakreslit spojnicový graf pomocí náhodných čísel. rozsah() Funkce se používá ke generování 10 sekvenčních čísel, která se používají pro hodnoty osy x. The náhodný modul pythonu se používá ke generování 10 náhodných celých čísel použitých pro hodnoty osy y. spiknutí() metoda se používá k vykreslení každého grafu spojnicového grafu na základě hodnot osy xa osy y. Když je kód spuštěn v interaktivním režimu, pak sys.vlajky.interaktivní vlajka bude Skutečný. Pokud hodnota tohoto příznaku není True, znamená to, že smyčka události Qt nevyžaduje spuštění, protože REPL (Run, Evaluate, Print, Loop) již má smyčku události.

# Importovat náhodný modul
# Importovat náhodný modul
importovat náhodně jako rd
# Importujte modul PyQtGraph
importovat pyqtgraph jako str
# Import QtGui z modulu PyQtGraph
z pyqtgraph.Qt import QtGui
# Generování hodnot v ose x
x = rozsah (0, 10)
# Vygenerujte hodnoty na ose y
y = []
pro i v rozsahu (0, 10):
n = rd.randint (0, 20)
y.připojit (n)
# Inicializujte graf
plt = str.spiknutí()
# Nastavte štítek pro osu x
plt.setLabel ('bottom', 'Sequentially Generated Values')
# Nastavte štítek pro osu y
plt.setLabel ('left', 'Randomly Generated Values')
# Nastavit vodorovný rozsah
plt.setXRange (0, 10)
# Nastavit svislý rozsah
plt.setYRange (0, 20)
# Nastavte název grafu
plt.setTitle ("Jednoduchý spojnicový graf")
# Nastavte hodnoty grafu
line = plt.spiknutí (x, y)
# Hlavní metoda
pokud __name__ == '__main__':
# Importovat sys modul
import sys
# Spusťte smyčku událostí Qt, pokud není spuštěna v interaktivním režimu
pokud sys.vlajky.interaktivní != 1:
QtGui.QAplikace.instance().exec ()

Výstup:

Následující podobný spojnicový graf se zobrazí po provedení výše uvedeného skriptu. Graf se bude lišit v každém provedení náhodných hodnot.

Příklad 2: Nakreslete spojnicový graf se stylem a značkou

Následující skript ukazuje, jak nakreslit spojnicový graf stylisty na základě hodnot seznamu pythonu. mkPen () funkce slouží k nastavení barvy a šířky čáry. ''Ó'se používá jako značka v grafu a barva a šířka značky se nastavují pomocí symbol pero a symbolVelikost vlastnosti.

# Importujte modul PyQtGraph
# Importujte modul PyQtGraph
importovat pyqtgraph jako str
# Import QtGui z modulu PyQtGraph
z pyqtgraph.Qt import QtGui
# Generování hodnot v ose x
x = rozsah (0, 10)
# Vygenerujte hodnoty na ose y
y = [3, 7, 5, 11, 8, 13, 9, 16, 15, 12]
# Inicializujte graf
plt = str.spiknutí()
# Nastavte štítek pro osu x
plt.setLabel ('bottom', 'X-axis Values')
# Nastavte štítek pro osu y
plt.setLabel ('left', 'Y-axis Values')
# Nastavit vodorovný rozsah
plt.setXRange (0, 10)
# Nastavit svislý rozsah
plt.setYRange (0, 20)
# Nastavte název grafu
plt.setTitle ("Čárový graf se stylem a značkou")
# Nastavte barvu pozadí
plt.setBackground ('d5ecf2')
# Nastavte hodnoty grafu barvou a šířkou pera
line = plt.plot (x, y, pero = str.mkPen ('r', width = 6), symbol = 'o', symbolPen = 'b', symbolSize = 20)
# Přidat legendu
plt.addLegend ()
# Zobrazit mřížky
plt.showGrid (x = True, y = True)
# Hlavní metoda
pokud __name__ == '__main__':
# Importovat sys modul
import sys
# Spusťte smyčku událostí Qt, pokud není spuštěna v interaktivním režimu
pokud sys.vlajky.interaktivní != 1:
QtGui.QAplikace.instance().exec_ ()
# Hlavní metoda
pokud __name__ == '__main__':
# Importovat sys modul
import sys
# Spusťte smyčku událostí Qt, pokud není spuštěna v interaktivním režimu
pokud sys.vlajky.interaktivní != 1:
QtGui.QAplikace.instance().exec_ ()

Výstup:

Po provedení výše uvedeného skriptu se zobrazí následující spojnicový graf.

Nakreslete sloupcový graf

Soubor dat lze vizualizovat pomocí sloupcového grafu. Jednoduchý pruh se vytvoří porovnáním seznamu dat se souvisejícím rozsahem dat. BarGraphItem třída se používá k vytvoření sloupcového grafu pomocí PyQtGraph.

Příklad 3: Nakreslete sloupcový graf

Následující skript ukazuje, jak nakreslit sloupcový graf na základě hodnot pole NumPy. BarGraphItem se používá k nakreslení sloupcového grafu s modrou barvou a hodnotou šířky 0.5.

# Importujte modul PyQtGraph
# Importujte modul PyQtGraph
importovat pyqtgraph jako str
# Import QtGui z modulu PyQtGraph
z pyqtgraph.Qt import QtGui
# Importovat knihovnu NumPy
importovat numpy jako np
# Vytvořte osu x
x = np.arange (0, 10)
# Vytvořte osu y
y = np.pole ([3, 5, 7, 9, 5, 8, 10, 6, 5, 2])
# Nastavte hodnoty sloupcového grafu a barvu a šířku stopy
bg = str.BarGraphItem (x = x, výška = y, šířka = 0.5, brush = 'b')
# Definujte proměnnou grafu
plt = str.spiknutí()
# Nastavte štítek pro osu x
plt.setLabel ('dole', '

Hodnoty osy X

')
# Nastavte štítek pro osu y
plt.setLabel ('left', '

Hodnoty osy Y

')
# Nastavte název pruhu
plt.setTitle ('

Sloupcový graf využívající PyQtGraph

')
# Přidejte položky sloupcového grafu
plt.addItem (bg)
# Hlavní metoda
pokud __name__ == '__main__':
# Importovat sys modul
import sys
# Spusťte smyčku událostí Qt, pokud není spuštěna v interaktivním režimu
pokud sys.vlajky.interaktivní != 1:
QtGui.QAplikace.instance().exec_ ()

Výstup:

Po provedení výše uvedeného skriptu se zobrazí následující sloupcový graf.

Závěr

Vytvoření tří různých typů grafů s náhodnými hodnotami, položkami seznamu a polem NumPy se v tomto kurzu ukázaly pomocí tří jednoduchých příkladů. Čtenáři budou moci po přečtení tohoto tutoriálu používat modul PyQtGraph k implementaci řádkových a sloupcových grafů.

Hry Užitečné nástroje pro hráče Linuxu
Užitečné nástroje pro hráče Linuxu
Pokud rádi hrajete hry na Linuxu, je pravděpodobné, že jste ke zlepšení herního zážitku použili aplikace a nástroje jako Wine, Lutris a OBS Studio. Kr...
Hry HD remasterované hry pro Linux, které nikdy dříve neměly vydání Linuxu
HD remasterované hry pro Linux, které nikdy dříve neměly vydání Linuxu
Mnoho vývojářů a vydavatelů her přichází s HD remasterem starých her, aby prodloužili životnost franšízy, prosím fanoušky, kteří požadují kompatibilit...
Hry Jak používat AutoKey k automatizaci linuxových her
Jak používat AutoKey k automatizaci linuxových her
AutoKey je nástroj pro automatizaci stolních počítačů pro systémy Linux a X11, programovaný v programech Python 3, GTK a Qt. Pomocí jeho funkcí skript...