2013-07-25 108 views
4

想知道什麼是需要的,以便圖例中顯示缺失值的顏色? 從UseR看實例! ggplot2 book,p94ggplot2:在圖例中顯示缺失值顏色

p <- qplot(sleep_total, sleep_cycle, data=msleep, colour=vore) 
p + scale_colour_hue(na.value = "Black") 
p + scale_colour_hue("What does \nit eat?", na.value="Black", breaks=c("herbi", "carni", "omni", "insecti", NA), labels=c("plants", "meat", "both", "insects", "don't know")) 

vore = NA的數據點顯示在圖中,但NA未列在圖例中。

感謝

回答

4

解決方法的問題將與其它相同字符的數據替換NA值(例如,unknown)和情節數據。

因此,將具有vore值的新變量vore2作爲字符。然後用unknown替換NA的值。

msleep$vore2<-as.character(msleep$vore) 
msleep$vore2[is.na(msleep$vore2)]<-"unknown" 

在繪圖中使用了顏色的新變量vore2

p <- qplot(sleep_total, sleep_cycle, data=msleep, colour=vore2) 
p + scale_colour_hue("What does \nit eat?", 
      breaks=c("herbi", "carni", "omni", "insecti", "unknown"), 
       labels=c("plants", "meat", "both", "insects", "don't know")) 
+0

感謝您的建議 - 我從教科書中得到了印象,GGPlot2設置會使這項工作成爲可能,因此可能不需要這樣的解決方法! – user1420372