Šilumos žemėlapis apibrėžiamas kaip grafinis duomenų atvaizdavimas naudojant spalvas matricos reikšmei vizualizuoti. Šiuo atveju, norint pavaizduoti įprastesnes vertybes ar didesnę veiklą, naudojamos ryškesnės spalvos, daugiausia rausvos spalvos, o rečiau įprastoms ar aktyvumo reikšmėms atvaizduoti pirmenybė teikiama tamsesnėms spalvoms. Šilumos žemėlapį taip pat apibrėžia šešėliavimo matricos pavadinimas. Šilumos žemėlapius Seaborn galima nubraižyti naudojant funkciją seaborn.heatmap().
seaborn.heatmap()
Sintaksė: seaborn.heatmap( duomenis , * , vmin=Nėra , vmax=Nėra , cmap=Nėra , centras=Nėra , annot_kws=Ne , linijos plotis = 0 , linecolor='balta' , cbar=Tiesa , **kwargs )
Svarbūs parametrai:
duomenys: 2D duomenų rinkinys, kuris gali būti įtrauktas į ndarray. vmin , vmax: Reikšmės, skirtos spalvų schemai pritvirtinti, kitu atveju jos išvedamos iš duomenų ir kitų raktinių žodžių argumentų. cmap: duomenų reikšmių susiejimas su spalvų erdve. centras: reikšmė, pagal kurią centruojama spalvų schema braižant skirtingus duomenis. annot: jei True, kiekviename langelyje parašykite duomenų reikšmę. fmt: eilutės formatavimo kodas, naudojamas pridedant komentarus. linijos plotis: linijų, kurios padalins kiekvieną langelį, plotis. linijos spalva: linijų, kurios padalins kiekvieną langelį, spalva. cbar: ar piešti spalvų juostą.
Visi parametrai, išskyrus duomenis, yra neprivalomi.
Grąžinimai: Objektas, kurio tipas matplotlib.axes._subplots.AxesSubplot
Supraskime šilumos žemėlapį su pavyzdžiais.
Pagrindinis šilumos žemėlapis
Šilumos žemėlapio sudarymas su numatytaisiais parametrais. Mes sukursime 10 × 10 2-D duomenis naudodami data() NumPy modulio funkcija.
Python3
# importing the modules> import> numpy as np> import> seaborn as sn> import> matplotlib.pyplot as plt> > # generating 2-D 10x10 matrix of random numbers> # from 1 to 100> data>=> np.random.randint(low>=> 1>,> >high>=> 100>,> >size>=> (>10>,>10>))> print>(>'The data to be plotted:
'>)> print>(data)> > # plotting the heatmap> hm>=> sn.heatmap(data>=> data)> > # displaying the plotted heatmap> plt.show()> |
>
>
Išvestis:
The data to be plotted: [[46 30 55 86 42 94 31 56 21 7] [68 42 95 28 93 13 90 27 14 65] [73 84 92 66 16 15 57 36 46 84] [ 7 11 41 37 8 41 96 53 51 72] [52 64 1 80 33 30 91 80 28 88] [19 93 64 23 72 15 39 35 62 3] [51 45 51 17 83 37 81 31 62 10] [ 9 28 30 47 73 96 10 43 30 2] [74 28 34 26 2 70 82 53 97 96] [86 13 60 51 95 26 22 29 14 29]]>

Tuos pačius duomenis naudosime visuose pavyzdžiuose.
Spalvų žemėlapio tvirtinimas
Jei nustatysime min vertė iki 30 ir vmax reikšmę iki 70, tada bus rodomi tik langeliai, kurių reikšmės yra nuo 30 iki 70. Tai vadinama spalvų žemėlapio įtvirtinimu.
Python3
# importing the modules> import> numpy as np> import> seaborn as sn> import> matplotlib.pyplot as plt> > # generating 2-D 10x10 matrix of random numbers> # from 1 to 100> data>=> np.random.randint(low>=>1>,> >high>=>100>,> >size>=>(>10>,>10>))> > # setting the parameter values> vmin>=> 30> vmax>=> 70> > # plotting the heatmap> hm>=> sn.heatmap(data>=>data,> >vmin>=>vmin,> >vmax>=>vmax)> > # displaying the plotted heatmap> plt.show()> |
>
>
Išvestis:

Spalvų schemos pasirinkimas
Čia mes apžvelgsime cmap parametras. „Matplotlib“ pateikia keletą spalvų schemų, kurias galite peržiūrėti čia . Mūsų pavyzdyje mes naudosime 20 skirtukas .
Python3
# importing the modules> import> numpy as np> import> seaborn as sn> import> matplotlib.pyplot as plt> > # generating 2-D 10x10 matrix of random numbers> # from 1 to 100> data>=> np.random.randint(low>=>1>,> >high>=>100>,> >size>=>(>10>,>10>))> > # setting the parameter values> cmap>=> 'tab20'> > # plotting the heatmap> hm>=> sn.heatmap(data>=>data,> >cmap>=>cmap)> > # displaying the plotted heatmap> plt.show()> |
>
>
Išvestis:

Spalvų žemėlapio centravimas
Centruokite cm žemėlapį į 0, praleidžiant centras parametras kaip 0.
Python3
# importing the modules> import> numpy as np> import> seaborn as sn> import> matplotlib.pyplot as plt> > # generating 2-D 10x10 matrix of random numbers> # from 1 to 100> data>=> np.random.randint(low>=>1>,> >high>=>100>,> >size>=>(>10>,>10>))> > # setting the parameter values> cmap>=> 'tab20'> center>=> 0> > # plotting the heatmap> hm>=> sn.heatmap(data>=>data,> >cmap>=>cmap,> >center>=>center)> > # displaying the plotted heatmap> plt.show()> |
>
>
Išvestis:

Rodomos langelių reikšmės
Jei norime parodyti langelių reikšmę, perduodame parametrą jie sako kaip Tiesa. fmt naudojamas norint pasirinkti rodomų langelių turinio duomenų tipą.
Paveldėjimo programa python
Python3
# importing the modules> import> numpy as np> import> seaborn as sn> import> matplotlib.pyplot as plt> > # generating 2-D 10x10 matrix of random numbers> # from 1 to 100> data>=> np.random.randint(low>=>1>,> >high>=>100>,> >size>=>(>10>,>10>))> > # setting the parameter values> annot>=> True> > # plotting the heatmap> hm>=> sn.heatmap(data>=>data,> >annot>=>annot)> > # displaying the plotted heatmap> plt.show()> |
>
>
Išvestis:

Atskyrimo linijos pritaikymas
Linijų, skiriančių ląsteles, storį ir spalvą galime pakeisti naudodami linijų pločiai ir linijinė spalva atitinkamai parametrus.
Python3
# importing the modules> import> numpy as np> import> seaborn as sn> import> matplotlib.pyplot as plt> > # generating 2-D 10x10 matrix of random numbers> # from 1 to 100> data>=> np.random.randint(low>=>1>,> >high>=>100>,> >size>=>(>10>,>10>))> > # setting the parameter values> linewidths>=> 2> linecolor>=> 'yellow'> > # plotting the heatmap> hm>=> sn.heatmap(data>=>data,> >linewidths>=>linewidths,> >linecolor>=>linecolor)> > # displaying the plotted heatmap> plt.show()> |
>
>
Išvestis:

Spalvų juostos slėpimas
Mes galime išjungti spalvų juostą nustatydami cbar parametrą į False.
Python3
# importing the modules> import> numpy as np> import> seaborn as sn> import> matplotlib.pyplot as plt> > # generating 2-D 10x10 matrix of random numbers> # from 1 to 100> data>=> np.random.randint(low>=>1>,> >high>=>100>,> >size>=>(>10>,>10>))> > # setting the parameter values> cbar>=> False> > # plotting the heatmap> hm>=> sn.heatmap(data>=>data,> >cbar>=>cbar)> > # displaying the plotted heatmap> plt.show()> |
>
>
Išvestis:

Etikečių pašalinimas
Galime išjungti „x“ ir „y“ etiketę, palikdami „False“. xticklabels ir yticklabels atitinkamai parametrus.
Python3
# importing the modules> import> numpy as np> import> seaborn as sn> import> matplotlib.pyplot as plt> > # generating 2-D 10x10 matrix of random numbers> # from 1 to 100> data>=> np.random.randint(low>=>1>,> >high>=>100>,> >size>=>(>10>,>10>))> > # setting the parameter values> xticklabels>=> False> yticklabels>=> False> > # plotting the heatmap> hm>=> sn.heatmap(data>=>data,> >xticklabels>=>xticklabels,> >yticklabels>=>yticklabels)> > # displaying the plotted heatmap> plt.show()> |
>
>
Išvestis:
