ggplot条形图与面依赖类别的顺序
发布时间:2020-05-23 06:27:36 所属栏目:程序设计 来源:互联网
导读:我已经看到许多问题(通常与 Order Bars in ggplot2 bar graph相关),关于如何(重新)在条形图中排序类别. 我所追求的只是一个不同的触摸,但是我还没有找到一个很好的方法:我有一个多面的条形图,我想根据另一个变量来独立地为每个方面排列x轴在我的情况下,该变
我已经看到许多问题(通常与 Order Bars in ggplot2 bar graph相关),关于如何(重新)在条形图中排序类别. 我所追求的只是一个不同的触摸,但是我还没有找到一个很好的方法:我有一个多面的条形图,我想根据另一个变量来独立地为每个方面排列x轴在我的情况下,该变量只是y值本身,即我只是希望在每个方面增加长度的条). 简单的例子,例如. Order Bars in ggplot2 bar graph: df <- data.frame(name=c('foo','bar','foo','bar'),period=c('old','old','recent','recent'),val=c(1.23,2.17,4.15,3.65)) p = ggplot(data = df,aes(x = reorder(name,val),y = val)) p = p + geom_bar(stat='identity') p = p + facet_grid(~period) p 我们得到如下: 而我想要的是: 好的,所有的哲学都放在一边,如果有人有兴趣,这里是一个丑陋的做法.这个想法是使用不同的标签(认为粘贴(句点,名称),除了将句点替换为0空格,1空格等,以使它们不显示).我需要这个情节,我不想安排grobs等,因为我可能想分享一个常见的传说等.以前给出的原子示例是: df <- data.frame(name=c('foo',3.65),stringsAsFactors=F) df$n = as.numeric(factor(df$period)) df = ddply(df,.(period,name),transform,x=paste(c(rep(' ',n-1),collapse='')) df$x = factor(df$x,levels=df[order(df$val),'x']) p = ggplot(data = df,aes(x = x,y = val)) p = p + geom_bar(stat='identity') p = p + facet_grid(~period,scale='free_x') p 另一个例子,仍然有点傻,但更接近我的实际用例,将是: df <- ddply(mpg,.(year,manufacturer),summarize,mixmpg = mean(cty+hwy)) df$manufacturer = as.character(df$manufacturer) df$n = as.numeric(factor(df$year)) df = ddply(df,levels=df[order(df$mixmpg),y = mixmpg)) p = p + geom_bar(stat='identity') p = p + facet_grid(~year,scale='free_x') p = p + theme(axis.text.x=element_text(angle=90,hjust=1,vjust=.5,colour='gray50')) p 闭上你的眼睛,想想帝国,并尝试享受. (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- java正则表达式四种常用的处理方式(匹配、分割、替代、获取
- IoC != 装配和实例化的反转 != DI(注射依赖)
- WPF中的依赖属性使用
- 正则表达式之判断用户注册信息是否为汉字、字母和数字
- [置顶] 设计模式之六大原则――单一职责原则(SRP)
- 【转】依赖倒置原则(DIP - Dependency Inversion Principle
- debian – 为什么“apt-get autoremove sendmail”会留下依
- 依赖倒置原则(DIP)转自:http://www.infoq.com/cn/articl
- 第4代白盒测试方法之“企业如何推行白盒测试”
- UML 关系 (泛化,实现,依赖,关联(聚合,组合))