Nors diagramas, rodančias santykį tarp dviejų kintamųjų, tokių kaip aukštis ir svoris, galima lengvai pavaizduoti plokščiaekraniu ekranu, kaip parodyta žemiau, viskas tampa netvarkinga, kai turime daugiau nei du parametrus.
Štai tada žmonės bando pereiti prie 3D siužetų, tačiau jie dažnai yra painūs ir nepatogūs, o tai panaikina visą duomenų vizualizavimo tikslą. Mums reikalingi šilumos vaizdai.
Kas yra šilumos žemėlapiai?
Pažvelgę į vaizdą iš termokameros, galite pamatyti pažodinį šilumos žemėlapį. Terminio vaizdo kamera rodo skirtingą temperatūrą kaip skirtingas spalvas. Spalvų schema kreipiasi į mūsų intuiciją, kad raudona spalva yra „šilta“, o mėlyna ir juoda spalva atspindi šaltus paviršius.
Šis Marso vaizdas yra tikrai geras pavyzdys, kai šalti regionai yra mėlynos spalvos, o šilti - daugiausia raudoni ir geltoni. Spalvų juosta paveikslėlyje parodo, kokia spalva atspindi kokią temperatūrą.
Naudodami matplotlib galime susieti grafo tašką (x, y) su konkrečia spalva, rodančia kintamąjį, kurį bandome vizualizuoti. Tai neturi būti temperatūra, tai gali būti bet kuris kitas kintamasis. Taip pat parodysime a spalvų juosta šalia jo nurodykite vartotojams, ką reiškia skirtingos spalvos.
Dažnai matydavote žmones, o ne šilumos žemėlapius, mininčius kolorapus. Jie dažnai naudojami pakaitomis. „Colormap“ yra bendresnis terminas.
„Matplotlib“ ir susijusių paketų diegimas ir importavimas
Norėdami pradėti naudotis „Matplotlib“, įsitikinkite, kad turite įdiegtą „Python“ (pageidautina „Python 3“ ir „pip“). Jums taip pat reikės numpy, skeptiškas ir pandos dirbti su duomenų rinkiniais. Kadangi mes ketiname parengti paprastą funkciją, tik du paketai numpy ir matplotlib bus reikalingi.
$ pip install matplotlib numpy# Arba, jei turite abu ir tris pitonus
$ pip3 įdiekite matplotlib numpy
Įdiegę bibliotekas, turite įsitikinti, kad jos yra importuotos į jūsų python programą.
importuoti numerį kaip npimportuoti matplotlib.pyplotas kaip plt
Dabar galite naudoti šių bibliotekų teikiamas funkcijas naudodami sintaksę kaip np.skaičiaus funkcija ()
ir plt.kažkokia kita funkcija ().
Keletas pavyzdžių
Pradėkime nuo paprastos matematinės funkcijos, kuri paima taškus plokštumoje (jų x ir y koordinates) ir priskiria jiems vertę, braižymą. Žemiau pateiktoje ekrano kopijoje parodyta funkcija kartu su siužetu.
Skirtingos spalvos reiškia skirtingas vertes (kaip rodo skalė šalia siužeto). Pažvelkime į kodą, kurį galima naudoti tam generuoti.
importuoti numerį kaip npimportuoti matplotlib.pyplotas kaip plt
# Matematinė funkcija, kurią turime nubrėžti
def z_func (x, y):
grįžimas (1 - (x ** 2 + y ** 3)) * np.galiojimo laikas (- (x ** 2 + y ** 2) / 2)
# Įvesties reikšmių nustatymas
x = np.aranžas (-3.0, 3.0, 0.1)
y = np.aranžas (-3.0, 3.0, 0.1)
X, Y = np.tinklelis (x, y)
# Išvesties apskaičiavimas ir saugojimas masyve Z
Z = z_func (X, Y)
im = plt.imshow (Z, cmap = plt.cm.RdBu, laipsnis = (- 3, 3, 3, -3), interpoliacija = 'bilinear')
plt.spalvų juosta (ne);
plt.pavadinimas ('$ z = (1-x ^ 2 + y ^ 3) e ^ - (x ^ 2 + y ^ 2) / 2 $')
plt.Rodyti()
Pirmiausia reikia pastebėti, kad mes importuojame tik matplotlib.parinkite nedidelę visos bibliotekos dalį. Kadangi projektas yra gana senas, per daugelį metų sukaupta daugybė daiktų. Pavyzdžiui, matplotlib.pyplotas buvo populiarus tuo metu, bet dabar yra tik istorinė relikvija, o jo importavimas tiesiog padidina jūsų programą.
Toliau apibrėžiame matematinę funkciją, kurią norime nubrėžti. Tai paima dvi reikšmes (x, y) ir pateikia trečią reikšmę z. Apibrėžėme dar nenaudotą funkciją.
Kitame skyriuje atliekama užduočių sukurti masyvą įvesties reikšmių, tam mes naudojame numpy, nors jūs galite naudoti diapazonas() funkcija, jei norite. Parengę x ir y reikšmių sąrašą (svyruoja nuo neigiamos 3 iki 3), mes apskaičiuojame iš jo z vertę.
Dabar, kai apskaičiavome įvestis ir išvestis, galime suskaičiuoti rezultatus. The plt.imshow () pasakoja pitonui, kad vaizdas bus susijęs su Z, kuris yra mūsų išvesties kintamasis. Taip pat sakoma, kad tai bus spalvotas žemėlapis, cmap, su raudona mėlyna (RdBu) Skalė, besitęsianti nuo -3 iki 3 bet kurioje ašyje. The interpoliacija parametras daro grafiką sklandesnį, dirbtinai. Priešingu atveju jūsų vaizdas atrodytų gana pikselių ir grubus.
Šiuo metu grafikas yra sukurtas, tik nespausdinamas. Tada pridedame spalvų juostą šone, kad būtų lengviau susieti skirtingas Z reikšmes su skirtingomis spalvomis, ir paminėtume lygtį pavadinime. Tai daroma etapais plt.spalvų juosta (ne) ir plt.pavadinimas (…). Galiausiai, iškvietus funkciją, ekrane parodomas grafikas.
Pakartotinis panaudojimas
Galite naudoti aukščiau pateiktą struktūrą, norėdami brėžti bet kurią kitą 2D kolonėlę. Jums net nereikia laikytis matematinių funkcijų. Jei jūsų failų sistemoje yra daugybė duomenų masyvų, galbūt informacijos apie tam tikrus demografinius rodiklius ar bet kokius kitus statistinius duomenis galite prijungti pakeisdami X, Y reikšmės nekeičiant spalvų kortelės skyriaus.
Tikimės, kad šis straipsnis jums buvo naudingas, ir jei jums patinka panašus turinys, praneškite mums.