„Python“

Kaip naudotis PyQtGraph?

Kaip naudotis PyQtGraph?

Mokslines ar skaitines vizualizacijos užduotis galima atlikti python'e lengvai naudojant įvairias Python bibliotekas, pvz Plotly, Matplotlib, Seaborn, ggplot, PyQt, ir pan. PyQtGraph yra naudingas modulis PyQt biblioteka sukurti diagramą. Šis modulis gali labai greitai sukurti diagramas. 2D ir 3D grafika gali būti sukurta naudojant šį modulį. Kaip naudotis PyQtGraph modulis, skirtas piešti skirtingų tipų grafikus, parodytas šioje pamokoje.

Būtinos sąlygos

Prieš kurdami diagramą turite įdiegti PyQtGraph modulį savo sistemoje. Paleiskite šią komandą, kad įdiegtumėte PyQtGraph naudodami pip3.

$ sudo pip3 įdiekite pyqtgraph

Lygiosios linijos grafikas

Linijinė diagrama arba linijinė diagrama yra diagrama, kurioje pateikiama informacija naudojant duomenų diagramų seriją. „PlotWidget“ valdiklis naudojamas visiems PyQtGraph sklypams kurti. Šiame valdiklyje yra drobė, ant kurios galima pridėti ar pašalinti bet kurį siužetą.

1 pavyzdys: nubrėžkite paprastą linijų diagramą

Šis scenarijus parodo būdą, kaip nubrėžti linijinę diagramą naudojant atsitiktinius skaičius. diapazonas() funkcija naudojama generuoti 10 nuoseklių skaičių, kurie naudojami x ašies reikšmėms. The atsitiktinis python modulis naudojamas generuoti 10 atsitiktinių sveikųjų skaičių, naudojamų y ašies reikšmėms. sklypas () metodas naudojamas kiekvienam linijinio grafiko brėžiniui nubrėžti, remiantis x ir y ašių vertėmis. Kai kodas vykdomas interaktyviuoju režimu, tada sys.vėliavos.interaktyvus vėliava bus Tiesa. Jei šios žymos reikšmė nėra teisinga, tai rodo, kad Qt įvykių kilpos nereikia vykdyti, nes REPL (Run, Evaluate, Print, Loop) jau turi įvykių kilpą.

# Importuoti atsitiktinį modulį
# Importuoti atsitiktinį modulį
importuoti atsitiktinai kaip rd
# Importuokite „PyQtGraph“ modulį
importuoti pyqtgraph kaip pg
# Importuokite „QtGui“ iš „PyQtGraph“ modulio
iš pyqtgraph.Qt importuoti QtGui
# Generuoti x ašies reikšmes
x = diapazonas (0, 10)
# Generuoti y ašies reikšmes
y = []
i diapazone (0, 10):
n = rd.randintas (0, 20)
y.pridėti (n)
# Inicijuokite siužetą
plt = pg.sklypas ()
# Nustatykite x ašies etiketę
plt.setLabel („apačioje“, „Nuosekliai generuojamos vertės“)
# Nustatykite y ašies etiketę
plt.setLabel („kairė“, „Atsitiktinai sugeneruotos vertės“)
# Nustatykite horizontalų diapazoną
plt.„setXRange“ (0, 10)
# Nustatykite vertikalų diapazoną
plt.setYRange (0, 20)
# Nustatykite diagramos pavadinimą
plt.„setTitle“ („Paprastas linijinis grafikas“)
# Nustatykite diagramos vertes
eilutė = plt.siužetas (x, y)
# Pagrindinis metodas
jei __pavadinimas = = '__main__':
# Importuoti sys modulį
importuoti sistemas
# Pradėkite Qt įvykių ciklą, nebent jis veiks interaktyviuoju režimu
jei sys.vėliavos.interaktyvus != 1:
QtGui.QPrograma.instancija().exec ()

Rezultatas:

Ši panaši linijų diagrama bus rodoma atlikus pirmiau pateiktą scenarijų. Kiekvieno atsitiktinių verčių vykdymo grafikas skirsis.

2 pavyzdys: nubrėžkite linijinę diagramą su stiliumi ir žymekliu

Šis scenarijus parodo, kaip nubrėžti stilistinės linijos diagramą pagal pitonų sąrašo reikšmes. „mkPen“ () funkcija naudojama linijos spalvai ir plotiui nustatyti. "o'naudojamas kaip žymeklis diagramoje, o žymeklio spalva ir plotis nustatomi naudojant simbolisPen ir simbolisSize savybes.

# Importuokite „PyQtGraph“ modulį
# Importuokite „PyQtGraph“ modulį
importuoti pyqtgraph kaip pg
# Importuokite „QtGui“ iš „PyQtGraph“ modulio
iš pyqtgraph.Qt importuoti QtGui
# Generuoti x ašies reikšmes
x = diapazonas (0, 10)
# Generuoti y ašies reikšmes
y = [3, 7, 5, 11, 8, 13, 9, 16, 15, 12]
# Inicijuokite siužetą
plt = pg.sklypas ()
# Nustatykite x ašies etiketę
plt.„setLabel“ („apatinė“, „X ašies vertės“)
# Nustatykite y ašies etiketę
plt.„setLabel“ („kairė“, „Y ašies vertės“)
# Nustatykite horizontalų diapazoną
plt.„setXRange“ (0, 10)
# Nustatykite vertikalų diapazoną
plt.setYRange (0, 20)
# Nustatykite diagramos pavadinimą
plt.setTitle („Linijinė diagrama su stiliumi ir žymekliu“)
# Nustatykite fono spalvą
plt.„setBackground“ („d5ecf2“)
# Nustatykite diagramos vertes naudodami rašiklio spalvą ir plotį
eilutė = plt.siužetas (x, y, rašiklis = p.mkPen ('r', plotis = 6), simbolis = 'o', simbolisPen = 'b', simbolisSize = 20)
# Pridėti legendą
plt.addLegend ()
# Rodyti tinklelius
plt.showGrid (x = tiesa, y = tiesa)
# Pagrindinis metodas
jei __pavadinimas = = '__main__':
# Importuoti sys modulį
importuoti sistemas
# Pradėkite Qt įvykių ciklą, nebent jis veiks interaktyviuoju režimu
jei sys.vėliavos.interaktyvus != 1:
QtGui.QPrograma.instancija().exec_ ()
# Pagrindinis metodas
jei __pavadinimas = = '__main__':
# Importuoti sys modulį
importuoti sistemas
# Pradėkite Qt įvykių ciklą, nebent jis veiks interaktyviuoju režimu
jei sys.vėliavos.interaktyvus != 1:
QtGui.QPrograma.instancija().exec_ ()

Rezultatas:

Ši eilutės diagrama bus rodoma atlikus pirmiau pateiktą scenarijų.

Lygiosios juostos diagrama

Duomenų rinkinį galima vizualizuoti naudojant juostinę diagramą. Paprasta juosta sukuriama lyginant duomenų sąrašą su susijusiu duomenų diapazonu. „BarGraphItem“ klasė naudojama sukurti juostų diagramą naudojant PyQtGraph.

3 pavyzdys: nubrėžkite juostinę diagramą

Šiame scenarijuje parodyta, kaip parengti juostos diagramą, remiantis „NumPy“ masyvo reikšmėmis. „BarGraphItem“ naudojama brėžti mėlynos spalvos juostos diagramą, kurios pločio vertė yra 0.5.

# Importuokite „PyQtGraph“ modulį
# Importuokite „PyQtGraph“ modulį
importuoti pyqtgraph kaip pg
# Importuokite „QtGui“ iš „PyQtGraph“ modulio
iš pyqtgraph.Qt importuoti QtGui
# Importuoti „NumPy“ biblioteką
importuoti numerį kaip np
# Generuoti x ašį
x = np.apelsinas (0, 10)
# Generuoti y ašį
y = np.masyvas ([3, 5, 7, 9, 5, 8, 10, 6, 5, 2])
# Nustatykite juostų diagramos vertes ir šepetėlio spalvą bei plotį
bg = pg.„BarGraphItem“ (x = x, aukštis = y, plotis = 0.5, teptukas = 'b')
# Apibrėžkite sklypo kintamąjį
plt = pg.sklypas ()
# Nustatykite x ašies etiketę
plt.setLabel ('apačia', '

X ašies vertės

„)
# Nustatykite y ašies etiketę
plt.setLabel ('kairė', '

Y ašies vertės

„)
# Nustatykite juostos pavadinimą
plt.setTitle ('

Juostinė diagrama naudojant PyQtGraph

„)
# Pridėti juostų diagramos elementus
plt.addItem (bg)
# Pagrindinis metodas
jei __pavadinimas = = '__main__':
# Importuoti sys modulį
importuoti sistemas
# Pradėkite Qt įvykių ciklą, nebent jis veiks interaktyviuoju režimu
jei sys.vėliavos.interaktyvus != 1:
QtGui.QPrograma.instancija().exec_ ()

Rezultatas:

Ši juostinė diagrama bus rodoma atlikus minėtą scenarijų.

Išvada

Šiame pamokoje parodyta trijų skirtingų tipų grafikų su atsitiktinėmis reikšmėmis, sąrašo elementų ir „NumPy“ masyvo kūrimas naudojant tris paprastus pavyzdžius. Skaitydami šią pamoką, skaitytojai galės naudoti „PyQtGraph“ modulį įgyvendindami linijų ir juostų diagramas.

Geriausi „Linux“ žaidimų konsolių emuliatoriai
Šiame straipsnyje bus išvardyta populiari žaidimų konsolių emuliavimo programinė įranga, skirta „Linux“. „Emuliacija“ yra programinės įrangos suderina...
Geriausi „Linux“ žaidimų distristai 2021 m
„Linux“ operacinė sistema nuėjo ilgą kelią nuo originalios, paprastos, serverio išvaizdos. Ši OS pastaraisiais metais nepaprastai patobulėjo ir dabar ...
Kaip užfiksuoti ir perduoti savo žaidimų sesiją sistemoje „Linux“
Anksčiau žaidimai buvo laikomi tik pomėgiu, tačiau laikui bėgant lošimų pramonė labai augo technologijų ir žaidėjų skaičiaus atžvilgiu. Žaidimų audito...