ggplot2学习笔记之手动离散型标度


       使用以下手动型标度可以定制新的标度:scale_colour_manual(..., values)、scale_fill_manual(..., values)、scale_size_manual(..., values)、scale_shape_manual(...,values)、scale_linetype_manual(..., values)等。使用这些标度,可以对图形的颜色、填充色、大小等属性进行自定义修改。这里主要介绍参数values(必选)、breaks、labels,其他具体查看帮助文档。

必选参数values:

       手动型标度有一个重要参数values,用于指定这个标度应该生成的值。如果这个向量中的元素是有名称的。则它将自动匹配输入和输出的值,否则它将按照离散型变量中水平的先后次序进行匹配。

p <- qplot(brainwt,bodywt,data=msleep,log="xy",geom = 'line')+ aes(colour=vore)
p + scale_colour_manual(values = c('red', 'orange', 'yellow', 'green', 'biue'))
colours <- c(carni='red','NA'='orange', insecti='yellow', herbi='green', omni='blue')
p + scale_colour_manual(values = colours)
p + aes(size = vore) + scale_size_manual(values = c(0.2,0.5,1,1.5))


前两个图是使用手动标度自定义了颜色标度,右图是使用了自定义的大小size 标度

可选参数breaks、labels:

  • breaks 参数控制着图例上显示的内容、顺序;
  • 而参数labels(必须与breaks 一起使用,且与breaks 长度一致)是控制图例显示的标签,比如以下图中的“A”、“B”、“C”、“D”;
  • 参数breaks 与labels 仅仅是影响图例的显示效果,而对图形没有任何影响。
p + scale_color_manual(values = colours,breaks = c("carni","herbi","omni"))
p + scale_color_manual(values = colours,breaks = c("carni","herbi","insecti","omni"),labels = c("A","B","C","D"))
p + scale_color_manual(values = colours,breaks = c("carni","omni"),labels = c("A","B"))


 


 评论