r-ggplot颜色标签



简单的问题:我有下面的数据帧df,我可以基于df:的label列进行散点图和颜色标签

if(!require("ggplot2")) { install.packages("ggplot2");  require("ggplot2") }
set.seed(1)
df <- data.frame(a= rnorm(30, mean=1, sd=1),
                b= rnorm(30, mean=5, sd =2),
                labels= sample(c(1,2,3), 30, replace=TRUE ))
ggplot(data= df, aes(x=a, y=b)) +  
geom_point(data= df, colour=df$labels, shape=1)

然而,我不知道如何指定标签的实际颜色(例如粉色、品红色、青色)。

我尝试将下面的代码添加到ggplot中,但它不起作用:

scale_colour_manual( name = "Name", values = c(1 = "pink", 
                                               2 = "magenta",
                                               3 = "cyan"))  

在这种情况下,我如何指定颜色?

如果要在数据中指定颜色,则需要使用aes。此外,如果要使用离散比例,则需要使用factor。你应该引用values中的数字。

ggplot(data= df, aes(x=a, y=b)) +  
  geom_point(aes(colour=factor(labels)), shape=1) +
  scale_colour_manual( name = "Name", values = c("1" = "pink", 
                                                 "2" = "magenta",
                                                 "3" = "cyan"))  

最新更新