Farblegende bei image()

Wie erstelle ich Grafiken, was ist zu beachten?

Moderatoren: EDi, jogo

Antworten
janedoe

Farblegende bei image()

Beitrag von janedoe »

Guten Tag,

ich möchte gerne bei meiner Graphik eine dazu passende Farblegende anzeigen lassen. Anhand der Seiten, die ich mir im Internet ansah, finde ich das ganze allerdings sehr kompliziert und auch sehr fallspezifisch. Gibt es eine Möglichkeit, eine Legende anzeigen zu lassen, die die Farben des Graphen wiedergibt, ohne vorhin eigens eine eigene Funktion schreiben zu müssen? Meine derzeitige Plotroutine

Code: Alles auswählen

D<- matrix(runif(100, min=-6, max=15),nrow=4)
xaxis <- seq(1,4)
yaxis <- seq(1,50,2)
image(xaxis, yaxis, D, col=topo.colors(100))
Danke für eure Hilfe :geek:

glg JD
Benutzeravatar
EDi
Beiträge: 1599
Registriert: Sa Okt 08, 2016 3:39 pm

Re: Farblegende bei image()

Beitrag von EDi »

Hier eine elegante ggplot2 Lösung mit viele Beispielen wie man die Farblegende ändern kann.

Code: Alles auswählen

D <- matrix(runif(100, min=-6, max=15),nrow=4)
library(ggplot2)
library(reshape2)


D_long <- melt(D)
p <- ggplot(D_long, aes(x = Var1, y = Var2, fill = value)) +
  geom_tile()
p



p +
  scale_fill_gradient(low = 'white', high = 'red')
p +
  scale_fill_gradient(low = 'green', high = 'blue')

p +
  scale_fill_gradient2(low = 'green', mid = 'yellow', high = 'red')

p +
  scale_fill_gradient2(low = 'green', mid = 'yellow', high = 'red',
                       midpoint = median(D_long$value))

p + 
  scale_fill_gradientn(colors = c('red', 'blue', 'yellow', 'steelblue', 'green'))

library(viridis)
p +
  scale_fill_viridis()
Bitte immer ein reproduzierbares Minimalbeispiel angeben. Meinungen gehören mir und geben nicht die meines Brötchengebers wieder.

Dieser Beitrag ist lizensiert unter einer CC BY 4.0 Lizenz
Bild.
Antworten