R 在ggplot中对各个面进行排序/分组
我已经创建了一个刻面图(在ggplot中)来说明个人的活动数据(所以他们是按参与者id刻面的)。创建此绘图所依据的图形具有长格式 我使用以下代码生成上面的图形R 在ggplot中对各个面进行排序/分组,r,sorting,ggplot2,R,Sorting,Ggplot2,我已经创建了一个刻面图(在ggplot中)来说明个人的活动数据(所以他们是按参与者id刻面的)。创建此绘图所依据的图形具有长格式 我使用以下代码生成上面的图形 ggplot(重塑的“我的数据”已选定,aes(x=”,y=值,fill=变量))+ 几何图形条(宽度=1,stat=“identity”,color=“white”)+ 坐标(y),起点=0)+ 缩放填充手册(值=cbPalette,标签=c(“社交媒体”、“信息”、“浏览”、“其他智能手机”、“脱机”))+ 主题_void()+
ggplot(重塑的“我的数据”已选定,aes(x=”,y=值,fill=变量))+
几何图形条(宽度=1,stat=“identity”,color=“white”)+
坐标(y),起点=0)+
缩放填充手册(值=cbPalette,标签=c(“社交媒体”、“信息”、“浏览”、“其他智能手机”、“脱机”))+
主题_void()+
镶嵌面包裹(~PPNR,ncol=18)+
实验室(title=“个人活动部”,fill=“活动”)+
主题(legend.position=“bottom”,legend.box.spating=unit(0.4,“cm”),plot.title=element\u text(margin=margin(0,0,15,0),size=18))
这只是一个代码示例,与我在问题下的评论一起使用
一种选择是在组列组内进行计算,并使用列组和类别来facet\u grid()
数据。下面是一些虚拟数据的示例:
库(tidyverse)
df%
#查找最大类别
变异(max=var[which.max(prop)])%>%
分组依据(最大)%>%
#组内排名(这是对他们进行排名的最佳方式吗?idk)
变异(秩=rep.int(秩(prop[which(var==max)]),
rle(个人)$长度)
ggplot(新DF,aes(1,道具,填充=var))+
几何坐标(position=“stack”)+
几何图形文本(aes(1,0.5,标签=单个),
数据=newdf[!重复(newdf$单个),])+
平面网格(秩~max)+
缩放y连续(扩展=c(0,0),中断=NULL)+
缩放x连续(扩展=c(0,0),中断=NULL)+
极坐标(theta=“y”)
由(v0.3.0)于2020-11-03创建,请使用
dput()
或direct dataframe,并发布一些样本数据。我建议在组内计算个人等级,然后根据y方向的等级和x方向的活动计算分面网格。您可以使用geom_text()
对个人进行注释,而不是使用镶嵌条进行注释。