首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >不同类别人脸ggplot2中的水平条形图

不同类别人脸ggplot2中的水平条形图
EN

Stack Overflow用户
提问于 2015-01-29 09:55:08
回答 1查看 746关注 0票数 2

我有一个带有I、类别和值的数据框架,而我可以很容易地获得一个水平点图,产品按类别分组在不同的方面,当我尝试使用barplot时,会显示缺少数据的事件类别。

有什么暗示吗?是窃听器还是我漏掉了一些细节?

谢谢,马可。

代码语言:javascript
复制
## I have a data frame with ids, categories, and values
d=data.frame(prd=c("orange","apple","pear","bread","crackers"),
         cat=c("fruit","fruit","fruit","bakery","bakery"),
         qty=c(10,20,15,8,17)
         )

# I manage to have an horizontal dot-plot, with products grouped by category in distinct facets
ggplot(d,aes(y=prd,x=qty)) + 
  geom_point(stat="identity",size=4) + 
  geom_segment(aes(yend=prd), xend=0, colour="grey50") +
  facet_grid(cat ~ .,scale="free",space="free") +
  theme_light()

# though when I try with a barplot, bars, with missing data show up
ggplot(d,aes(x=prd,y=qty)) + 
  geom_bar(stat="identity") + 
  coord_flip() + 
  facet_grid(cat ~ .,scale="free",space="free") +
  theme_light()
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-01-29 13:18:54

Ggplot2目前不支持非笛卡儿coord或coord_flip的自由鳞片。

所以要么你可以在没有翻转的情况下绘制它们:

代码语言:javascript
复制
ggplot(d,aes(y=qty,x=prd)) + 
facet_wrap(~cat, scale="free") +
geom_bar(stat="identity") +
theme_light()

或者你用折叠式的方法来解决前男友。将两个变量分成一个类别变量(我承认这个解决方案在视觉上不太吸引人):

代码语言:javascript
复制
d$n <- paste(d$cat, d$prd, sep="|")

ggplot(d,aes(y=qty,x=n)) + 
geom_bar(stat="identity") +
coord_flip() +
theme_light()
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28211623

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档