标签: vcd

R vcd ::马赛克重叠标签

我正在生成一个镶嵌图vcd::mosaic.但是我给出的因素的文本很长(切割它们不是一种选择,并且在很多情况下,介绍\n似乎令人生畏),所以文本中有重叠,我无法强制标签垂直于轴.

这就是我正在尝试的:

a <- data.frame(x=sample(LETTERS[1:4],16,replace = TRUE), 
                y=rep(paste("very long label here at number", 1:4, paste=" "), 4))
mosaic(y ~ x, data= a, las= 2)
Run Code Online (Sandbox Code Playgroud)

但这就是我得到的: 在此输入图像描述

我也tryed par(las= 2)par(las= 3),但这些都不是能够迫使他们垂直对齐(las= 2用效果很好mosaicplot,不过,这就像vcd::mosaic覆盖las无论是作为一个给定的参数或作为默认设置par.我也有打par(mar),但标签足够长,可以欺骗这种解决方法.

我该怎么做才能获得可读标签?

##########编辑添加:##########

我也试过这个,但无济于事:

mosaic(y ~ x, data= a, labeling_list= list(gp_text= gpar(las= 2)))
Run Code Online (Sandbox Code Playgroud)

mosaic(y ~ x, data= a, labeling_list= list(rot_labels = c(0,90,0,0)))
  # Actually placed the "90" in the 4 positions …
Run Code Online (Sandbox Code Playgroud)

plot r mosaic-plot vcd

2
推荐指数
1
解决办法
2388
查看次数

如何让 xlab 和 ylab 在 vcd 包中的马赛克图中工作

出于某种原因,我无法让 xlab 和 ylab 在 vcd 包中的马赛克图中工作。

我试过:

mosaic(~Sex +Survived, 
       data=Titanic,
       shade=T, 
       legend=T, 
       main="myplot", 
       labeling_args=list(abbreviate = c( Sex=2, Survived=1)) ,
       ylab="Gender", 
       xlab="survival")
Run Code Online (Sandbox Code Playgroud)

这分别标记轴“性别”和“幸存”。

mosaic(margin.table(Titanic, c(2,4)),
       ylab="Gender", 
       xlab="survival",
       shade=T, legend=T, 
       main="myplot", 
       labeling_args=list(abbreviate = c( Sex=2, Survived=1)))
Run Code Online (Sandbox Code Playgroud)

这也分别标记了“性别”和“幸存”轴。

mosaicplot(margin.table(Titanic, c(2,4)),
           shade=T, 
           legend=T, 
           main="myplot", 
           labeling_args=list(abbreviate = c(Sex=2, Survived=1)), 
           ylab="Gender", 
           xlab="survival")
Run Code Online (Sandbox Code Playgroud)

这正确地标记了轴,但忽略了“labeling_args”

有没有人有什么建议?

mosaic-plot vcd

1
推荐指数
1
解决办法
1015
查看次数

标签 统计

mosaic-plot ×2

vcd ×2

plot ×1

r ×1