Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 如何减少geom_文本标签之间的间距?_R_Ggplot2_Geom Text - Fatal编程技术网

R 如何减少geom_文本标签之间的间距?

R 如何减少geom_文本标签之间的间距?,r,ggplot2,geom-text,R,Ggplot2,Geom Text,我已成功构建了以下绘图,其中我使用仅包含geom_文本标签的精简绘图来显示另一个绘图的成组总体: 然而,geom_文本标签之间的距离太大,并且组内群体与他们应该代表的组没有“完全”垂直对齐 有没有办法改变这种距离 绘图代码如下所示: gymnasiegrov_utfall<-totdata%>%as_tibble() %>% group_by(gymnasiegrov, totstatus_tri) %>% summarise(antal = n()) %>%

我已成功构建了以下绘图,其中我使用仅包含geom_文本标签的精简绘图来显示另一个绘图的成组总体:

然而,geom_文本标签之间的距离太大,并且组内群体与他们应该代表的组没有“完全”垂直对齐

有没有办法改变这种距离

绘图代码如下所示:

gymnasiegrov_utfall<-totdata%>%as_tibble() %>%
group_by(gymnasiegrov, totstatus_tri) %>% 
summarise(antal = n()) %>% 
mutate(andel = antal / sum(antal))%>% 
ggplot(.) + 
geom_col(mapping = aes(x = gymnasiegrov, y = andel)) + 
coord_flip() + 
facet_wrap(~totstatus_tri)

gymnasiegrov_utfall_antal<-totdata%>% 
ggplot(aes(x=gymnasiegrov))+ 
geom_text(stat='count',aes(label=..count..),hjust="inward",y=1) + 
coord_flip()+
theme_invisible+
scale_y_discrete(breaks=NULL)+
scale_x_discrete(breaks=NULL)

ggarrange(gymnasiegrov_utfall, gymnasiegrov_utfall_antal, ncol=2, widths = c(.85,.15))

我仍然认为使用方法I会更简单,但如果您喜欢此方法的外观,则可以执行以下操作:

库(ggpubr)
健身房收益率%
as_tible()%>%
组员(康赛德格罗夫、托特斯泰)%>%
总结(antal=n())%>%
突变(安第尔=antal/sum(antal))%>%
ggplot(.)+
geom_col(映射=aes(x=Gymsiegrov,y=andel))+
坐标翻转()
端面缠绕(~totstatus\u tri)
健身房总收入%
ggplot(aes(x=G))+
geom_文本(stat='count',aes(label=..count..),y=1)+
coord_flip()+
主题_pubclean()+
主题(strip.text=element_text(margin=margin(1,0,5,0)))+
实验室(y=“\n”,x=”“)+
缩放y离散(断开=空)+
比例x离散(中断=空)+
面_包裹(.~“计数”)
ggarrange(Gymsiegrov_utfall,Gymsiegrov_utfall_antal,ncol=2,宽度=c(.85,.15))

好的,谢谢!我从中得到的是:1)刻面数据以某种方式改变了布局,在这种情况下,我最好将刻面数据与其他刻面数据进行比较。2) 如果我想访问geom_文本标签周围的边距,我可以通过strip.text?是的@Magnus,主要的“黑客”是1)将第二个绘图分面。2) 添加一个不可见的y轴标签,使底部的空间相等;3)调整strip.text的边距,使其与第一个打印匹配
structure(list(gymnasiegrov = structure(c(1L, 10L, 6L, 7L, 11L, 
5L, 16L, 3L, 9L, 14L, 12L, 8L, 13L, 15L, 18L, 4L, 2L, 17L), .Label = c("Oklart", 
"friskoleprogram", "Handels- och administrationsprogrammet", 
"specialutformat program", "Vård- och Omsorgsprogrammet", "teknikprogrammet", 
"komvux", "samhälls- och ekonomiprogrammet", "medieprogrammet", 
"naturvetenskapliga programmet", "samhällsvetenskapliga programmet", 
"bygg, el, fordon, hantverk, sjöfart, industriteknik", "naturbruksprogrammet", 
"estetiska programmet", "Barn- och Fritidsprogrammet", "ekonomiprogrammet/ ekonomi", 
"ekonomiprogrammet/ juridik", "Hotell- och Restaurang"), class = c("ordered", 
"factor")), totstatus_tri = structure(c(2L, 3L, 1L, 3L, 2L, 3L, 
2L, 1L, 1L, 1L, 3L, 3L, 1L, 2L, 1L, 2L, 3L, 1L), .Label = c("pågående studier", 
"tidigt avbrott eller återbud", "sent avbrott"), class = c("ordered", 
"factor"))), row.names = c(NA, -18L), groups = structure(list(
    gymnasiegrov = structure(1:18, .Label = c("Oklart", "friskoleprogram", 
    "Handels- och administrationsprogrammet", "specialutformat program", 
    "Vård- och Omsorgsprogrammet", "teknikprogrammet", "komvux", 
    "samhälls- och ekonomiprogrammet", "medieprogrammet", "naturvetenskapliga programmet", 
    "samhällsvetenskapliga programmet", "bygg, el, fordon, hantverk, sjöfart, industriteknik", 
    "naturbruksprogrammet", "estetiska programmet", "Barn- och Fritidsprogrammet", 
    "ekonomiprogrammet/ ekonomi", "ekonomiprogrammet/ juridik", 
    "Hotell- och Restaurang"), class = c("ordered", "factor")), 
    .rows = list(1L, 17L, 8L, 16L, 6L, 3L, 4L, 12L, 9L, 2L, 5L, 
        11L, 13L, 10L, 14L, 7L, 18L, 15L)), row.names = c(NA, 
-18L), class = c("tbl_df", "tbl", "data.frame"), .drop = TRUE), class = c("grouped_df", 
"tbl_df", "tbl", "data.frame"))