2013-10-30 12 views
11

Ich finde diese Variable ein wenig verwirrend, zum Beispiel aus der Dokumentation:..level .. in ggplot2 Konturplot

require(ggplot2) 
require(reshape2) 
volcano3d <- melt(volcano) 
names(volcano3d) <- c("x", "y", "z") 
v <- ggplot(volcano3d, aes(x, y, z = z)) 
v1 = v + stat_contour(aes(colour=..level..,size=..level..)) 

Warum kann ich nicht verwenden diese:

v2 = v + stat_contour(aes(colour=as.factor(z),size=as.factor(z))) 

Antwort

7

Aus Hadley Wickhams A Layered Grammar of Graphics, Seite 21, die .. .. wird verwendet, weil die Ästhetik (in diesem Fall die Ebenen der Konturen) nicht im ursprünglichen Datensatz vorhanden ist, sondern stattdessen durch die Konturstatistik berechnet wird.

Die zwei Punkte sind ein visueller Indikator, der hervorhebt, dass die Variable in den Originaldaten nicht vorhanden ist, aber von der Statistik berechnet wurde.

Sie können nicht colour=as.factor(z) oder size=as.factor(z) verwenden, da die Grafik nicht z nicht verwendet, sondern verwendet eine statistische Transformation davon - nämlich ..level..