首文推荐 ggThemeAssist:鼠标调整ggplot2主题,详情见:ggThemeAssist
,链接或许会失效建议关注公众号
条形图上色
可以使用color和fill图形属性为条形图上色
ggplot(diamonds)+geom_bar(aes(cut,color = cut))
image.png
ggplot(diamonds)+geom_bar(aes(cut,fill = cut))
image.png
以上两图的区别,color是边框填充,fill是整体填充。
如果我们把fill映射给变量clarity,那么条形图会堆叠起来,每个色彩矩阵表示cut和clarity的一种组合。
ggplot(diamonds)+geom_bar(aes(cut,fill=clarity))
image.png
这种堆叠是由position参数设定的位置调整功能自动完成的。如果不想生成堆叠式的条形图,你可以使用以下三个选项之一:"identity","fill","dodge",下面介绍位置调整。
位置调整
1. 当position设置为identity时,每个对象会堆叠在图中:
ggplot(diamonds,aes(cut,fill=clarity))+geom_bar(position="identity")
image.png
这时候为了让重叠部分能够显示出来我们可以加一个
alpha
参数或者设置fill = NA
(不填充颜色,完全透明)
设置alpha参数
ggplot(diamonds,aes(cut,fill=clarity))+geom_bar(alpha=1/5,position="identity")
image.png
设置fill=NA
ggplot(diamonds,aes(cut,color=clarity))+geom_bar(fill=NA,position="identity")
image.png
2. position设置为fill,可以容易的比较组间比例。
ggplot(diamonds,aes(cut,fill=clarity))+geom_bar(position="fill")
image.png
3. position设置为dodge,将每组中的条形并列放置。
ggplot(diamonds,aes(cut,fill=clarity))+geom_bar(position="dodge")
image.png
此外,还有一个特殊的位置调整,它不适用于条形图,但适用于散点图
我们在绘制mpg数据的时候有234个观测值。但是散点图只显示了126个点:
这是因为有些点在舍入取整后重叠了(过绘制),想让这些点显示,可以设置位置调整
position="jitter"
(抖动):
ggplot(mpg)+geom_point(aes(displ,hwy),position="jitter")
image.png
网友评论