繁体   English   中英

格式化堆叠的geom_bar ggplot的内部行

[英]format internal lines of a stacked geom_bar ggplot

我想从ggplot中删除内部边框,只在每个条形的外部周围留下一个彩色边框。 这是一个测试数据框,带有堆积的条形图。 理想情况下,我将使堆栈中的组仍然是灰色阴影,每个框具有彩色轮廓。

test <- data.frame(iso=rep(letters[1:5],3),
               num= sample(1:99, 15, replace=T),
               fish=rep(c("pelagic", "reef", "benthic"), each=5),
               colour=rep(rainbow(n=5),3))

ggplot(data=test, aes(x=iso, y=num, fill=fish, colour=colour)) +
  geom_bar(stat="identity") +
  theme_bw() + 
  scale_colour_identity() + scale_fill_grey(start = 0, end = .9)

在此处输入图片说明

您可以通过将fillcolour aes()设置移动到两个单独的geom_bar()元素中来完成此操作:一个元素获取每个iso值(轮廓)的总和,另一个元素按fish进行拆分:

ggplot(data=test, aes(x=iso, y=num)) +
  geom_bar(stat="summary", fun.y="sum", aes(color=colour)) +
  geom_bar(stat="identity", aes(fill=fish)) +
  theme_bw() + 
  scale_colour_identity() + 
  scale_fill_grey(start = 0, end = .9)

在此处输入图片说明

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM