Forum » Programiranje » [Python + pyplot] Scatter plot in barve posameznih točk
[Python + pyplot] Scatter plot in barve posameznih točk
bluefish ::
Recimo, da imam sledeč primer:
Kako bi z drugo barvo obarval le elementa y[0] in y[3]?
Preizkušal sem že več opcij pa mi nekako ne gre.
x = range(5) y = [5, 8, 4, 9, 12] plt.figure() plt.scatter(x, y, color='blue') plt.show()
Kako bi z drugo barvo obarval le elementa y[0] in y[3]?
Preizkušal sem že več opcij pa mi nekako ne gre.
- spremenil: bluefish ()
Raptor F16 ::
Če imaš vektor, ne moreš posebej pobarvati le izbranih elementov ?
Ali pa da plottaš modre in rdeče posebej, tako kot funkcije?
Ali pa da plottaš modre in rdeče posebej, tako kot funkcije?
bluefish ::
Problem je v x osi. plt.scatter želi na vsak način enako število elementov. Načeloma to ne bi bil problem, vendar imam v array-u nan elemente. Če rišem grafa enega čez drugega, mi zaradi nan drugi graf enostavno prebarva prvega.
Zgodovina sprememb…
- spremenil: bluefish ()
Raptor F16 ::
Problem je v x osi. plt.scatter želi na vsak način enako število elementov. Načeloma to ne bi bilo problem, vendar imam v array-u nan elemente. Če rišem grafa enega čez drugega, mi zaradi nan drugi graf enostavno prebarva prvega.
Malo sem ven iz Pythona, ampak tole ne bi prijelo?
(nimam možnosti testirat na trenutni mašini)
x = range(5) y = [5, 8, 4, 9, 12] plt.figure() plt.scatter(x, y, color='blue') plt.scatter(x[0], y[0], color='red') plt.scatter(x[3], y[3], color='red') plt.show()
Mislim, če prav razumem, ti imaš dva vektorja. Na scatter plotu bi rad pokazal pikice z [xy] koordinatami. Če se prav spomnim, jih lahko posebej plottaš povrh.
bluefish ::
Ja, to deluje. Pri 20 točkah, kjer so v enem primeru obarvane tri, v drugem jih je 5 ipd. pa tole odpove.
Vem, čaranje s for loopom, ampak sem upal na bolj elegantno rešitev.
Vem, čaranje s for loopom, ampak sem upal na bolj elegantno rešitev.
Zgodovina sprememb…
- spremenil: bluefish ()
Raptor F16 ::
Ja, to deluje. Pri 20 točkah, kjer so v enem primeru obarvane tri, v drugem jih je 5 ipd. pa tole odpove.
Vem, čaranje s for loopom, ampak sem upal na bolj elegantno rešitev.
Aha... ti bi rad...
Čakaj, tudi to deluje:
import matplotlib.pyplot as plt x = range(5) y = [5, 8, 4, 9, 12] plt.scatter(x, y, color='blue') plt.scatter([x[0],x[3]],[y[0], y[3]] , color='red') plt.show()
Ti lahko sestaviš dva vektor poljubnih vrednosti iz prejšnjih dveh vektorjev. Meni izgleda bolj elegantna rešitev.
Kodo lahko probate tudi tukaj:
https://hub.gke.mybinder.org/user/ipyth...
Zgodovina sprememb…
- spremenil: Raptor F16 ()
bluefish ::
Sem naredil na ta način. Hvala.
Pri risanju s for zanko bi bil problem z label, ker ga potem v legendi ustvari za vsako iteracijo.
Pri risanju s for zanko bi bil problem z label, ker ga potem v legendi ustvari za vsako iteracijo.
Raptor F16 ::
Sem naredil na ta način. Hvala.
Pri risanju s for zanko bi bil problem z label, ker ga potem v legendi ustvari za vsako iteracijo.
Numpy as np (no problem)
Če ne drugega sem tudi svoje znanje malo obnovil.
Moram si Anacondo stegnit v kratkem. C++ me ni prepričal za drugo kot mikrokrmilnike.
Zgodovina sprememb…
- spremenil: Raptor F16 ()
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | c++ two dimensional array v classuOddelek: Programiranje | 1393 (1196) | Senitel |
» | [JavaScript] Spreminjanje ozadjaOddelek: Programiranje | 844 (788) | Cvenemir |
» | [php] phplotOddelek: Izdelava spletišč | 1206 (1055) | slovencl |
» | Mirc za maca?Oddelek: Programska oprema | 970 (905) | IceIceBaby |
» | Spreminanje vsebine CSS datotek z PHPjemOddelek: Izdelava spletišč | 1166 (1130) | njok |