Python

Kako uporabljati PyQtGraph?

Kako uporabljati PyQtGraph?

Naloge znanstvene ali numerične vizualizacije lahko v pythonu enostavno izvedete z uporabo različnih knjižnic Python, kot je Plotly, Matplotlib, Seaborn, ggplot, PyQt, itd. PyQtGraph je uporaben modul PyQt knjižnico za ustvarjanje grafa. Ta modul lahko zelo hitro ustvari grafe. S tem modulom lahko ustvarite 2D in 3D grafiko. Kako uporabljati PyQtGraph modul za risanje različnih vrst grafov je prikazan v tej vadnici.

Pogoji

Preden ustvarite graf, morate v sistem namestiti modul PyQtGraph. Zaženite naslednji ukaz za namestitev PyQtGraph s pomočjo pip3.

$ sudo pip3 namesti pyqtgraph

Nariši črtni graf

Črtni grafikon ali črtni graf je grafikon, ki prikazuje informacije z uporabo vrste podatkovnih grafikonov. PlotWidget widget se uporablja za ustvarjanje vseh ploskev PyQtGraph. Ta pripomoček vsebuje platno, na katerem je mogoče dodati ali odstraniti katero koli ploskev.

Primer-1: Narišite preprost linijski graf

Naslednji skript prikazuje način risanja črtnega grafa z uporabo naključnih števil. obseg () funkcija se uporablja za generiranje 10 zaporednih števil, ki se uporabljajo za vrednosti osi x. The naključen modul pythona se uporablja za generiranje 10 naključnih celoštevilčnih števil, ki se uporabljajo za vrednosti osi y. ploskev () metoda se uporablja za risanje vsake ploskve črtnega grafa na podlagi vrednosti osi x in osi y. Ko se koda izvede v interaktivnem načinu, potem sys.zastave.interaktivni zastava bo Prav. Če vrednost te zastavice ni True, to pomeni, da zanke dogodka Qt ni treba zagnati, ker REPL (Run, Evaluate, Print, Loop) že ima zanko dogodka.

# Uvozi naključni modul
# Uvozi naključni modul
uvozi naključno kot rd
# Uvozi modul PyQtGraph
uvozi pyqtgraph kot str
# Uvozite QtGui iz modula PyQtGraph
iz pyqtgraph.Qt uvoz QtGui
# Ustvari vrednosti osi x
x = obseg (0, 10)
# Ustvari vrednosti osi y
y = []
za i v območju (0, 10):
n = rd.randint (0, 20)
y.dodaj (n)
# Inicializirajte zaplet
plt = pg.ploskev ()
# Nastavite oznako za os x
plt.setLabel ('bottom', 'Sequentially Generated Values')
# Nastavite oznako za os y
plt.setLabel ('levo', 'Naključno generirane vrednosti')
# Nastavite vodoravno območje
plt.setXRange (0, 10)
# Nastavite navpični obseg
plt.setYRange (0, 20)
# Nastavite naslov grafa
plt.setTitle ("Simple Line Graph")
# Nastavite vrednosti ploskve
vrstica = plt.ploskev (x, y)
# Glavna metoda
če je __name__ == '__main__':
# Uvozi modul sys
uvoz sys
# Zaženite zanko dogodka Qt, razen če se izvaja v interaktivnem načinu
če sys.zastave.interaktivni != 1:
QtGui.QAplikacija.primer ().exec ()

Izhod:

Naslednji podoben graf se bo prikazal po izvedbi zgornjega skripta. Graf se pri naključnih vrednostih razlikuje pri vsaki izvedbi.

Primer-2: Narišite črtni graf s stilom in oznako

Naslednji skript prikazuje, kako narisati linijski graf stilista na podlagi vrednosti seznama python. mkPen () funkcija se uporablja za nastavitev barve in širine črte. "o'se uporablja kot označevalec na grafu, barva in širina označevalnika pa se nastavi z uporabo symbolPen in symbolSize lastnosti.

# Uvozi modul PyQtGraph
# Uvozi modul PyQtGraph
uvozi pyqtgraph kot str
# Uvozite QtGui iz modula PyQtGraph
iz pyqtgraph.Qt uvoz QtGui
# Ustvari vrednosti osi x
x = obseg (0, 10)
# Ustvari vrednosti osi y
y = [3, 7, 5, 11, 8, 13, 9, 16, 15, 12]
# Inicializirajte zaplet
plt = pg.ploskev ()
# Nastavite oznako za os x
plt.setLabel ('spodaj', 'Vrednosti osi X')
# Nastavite oznako za os y
plt.setLabel ('levo', 'Vrednosti osi Y')
# Nastavite vodoravno območje
plt.setXRange (0, 10)
# Nastavite navpični obseg
plt.setYRange (0, 20)
# Nastavite naslov grafa
plt.setTitle ("Črtni graf s stilom in označevalnikom")
# Nastavite barvo ozadja
plt.setBackground ('d5ecf2')
# Nastavite vrednosti ploskve z barvo in širino pisala
vrstica = plt.ploskev (x, y, pero = str.mkPen ('r', width = 6), symbol = 'o', symbolPen = 'b', symbolSize = 20)
# Dodaj legendo
plt.addLegend ()
# Pokaži mreže
plt.showGrid (x = True, y = True)
# Glavna metoda
če je __name__ == '__main__':
# Uvozi modul sys
uvoz sys
# Zaženite zanko dogodka Qt, razen če se izvaja v interaktivnem načinu
če sys.zastave.interaktivni != 1:
QtGui.QAplikacija.primer ().exec_ ()
# Glavna metoda
če je __name__ == '__main__':
# Uvozi modul sys
uvoz sys
# Zaženite zanko dogodka Qt, razen če se izvaja v interaktivnem načinu
če sys.zastave.interaktivni != 1:
QtGui.QAplikacija.primer ().exec_ ()

Izhod:

Naslednji vrstni graf se bo prikazal po izvedbi zgornjega skripta.

Nariši črtni grafikon

Nabor podatkov je mogoče vizualizirati z uporabo stolpčnega grafa. Preprosta vrstica se ustvari s primerjavo seznama podatkov s povezanim obsegom podatkov. BarGraphItem class se uporablja za ustvarjanje stolpčnega grafa z uporabo PyQtGraph.

Primer-3: Narišite palični graf

Naslednji skript prikazuje, kako narisati palični graf na podlagi vrednosti matrike NumPy. BarGraphItem se uporablja za risanje paličnega grafa z modro barvo in vrednostjo širine 0.5.

# Uvozi modul PyQtGraph
# Uvozi modul PyQtGraph
uvozi pyqtgraph kot str
# Uvozite QtGui iz modula PyQtGraph
iz pyqtgraph.Qt uvoz QtGui
# Uvozi knjižnico NumPy
uvozi numpy kot np
# Ustvari os x
x = np.arange (0, 10)
# Ustvari os y
y = np.matrika ([3, 5, 7, 9, 5, 8, 10, 6, 5, 2])
# Nastavite vrednosti stolpčnega grafikona ter barvo in širino čopiča
bg = pg.BarGraphItem (x = x, višina = y, širina = 0.5, čopič = 'b')
# Določite spremenljivko ploskve
plt = pg.ploskev ()
# Nastavite oznako za os x
plt.setLabel ('spodaj', '

Vrednosti osi X

')
# Nastavite oznako za os y
plt.setLabel ('levo', '

Vrednosti osi Y

')
# Nastavite naslov vrstice
plt.setTitle ('

Črtasti graf z uporabo PyQtGraph

')
# Dodajte elemente paličnega grafikona
plt.addItem (bg)
# Glavna metoda
če je __name__ == '__main__':
# Uvozi modul sys
uvoz sys
# Zaženite zanko dogodka Qt, razen če se izvaja v interaktivnem načinu
če sys.zastave.interaktivni != 1:
QtGui.QAplikacija.primer ().exec_ ()

Izhod:

Po izvedbi zgornjega skripta se bo prikazal naslednji stolpčni graf.

Zaključek

Ustvarjanje treh različnih vrst grafov z naključnimi vrednostmi, elementi seznama in matriko NumPy so prikazani v tej vadnici s pomočjo treh preprostih primerov. Bralci bodo lahko modul PyQtGraph uporabljali za izvajanje črtnih in stolpčnih grafov po branju te vadnice.

Najboljše igre z ročnim sledenjem
Oculus Quest je pred kratkim predstavil odlično idejo ročnega sledenja brez krmilnikov. Z vedno večjim številom iger in dejavnosti, ki izvajajo podpor...
Kako prikazati prekrivanje zaslonskega menija v celozaslonskih aplikacijah in igrah za Linux
Igranje celozaslonskih iger ali uporaba aplikacij v celozaslonskem načinu brez motenj vam lahko odreže ustrezne sistemske informacije, ki so vidne na ...
Top 5 kartic za zajemanje iger
Vsi smo v YouTubu videli in oboževali pretakanje iger. PewDiePie, Jakesepticye in Markiplier so le nekateri izmed najboljših igralcev, ki so zaslužili...