4

只是想知道需要什么才能使缺失值的颜色显示在图例中?查看来自用户的示例!ggplot2 书,p94

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

1 回答 1

4

该问题的解决方法是将NA数据中的值替换为相同的其他字符(例如,unknown)并绘制数据。

因此,创建了新变量 vore2,其vore值作为字符。然后将NA值替换为unknown.

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"))
于 2013-07-25T05:41:45.463 回答