1
我在R中使用vcd库来执行2个分类变量的拼接图,每个拼接图都有多个级别。我必须自定义函数调用“马赛克”,以解决我的标签重叠问题。拼接图:空单元格和重叠标签
不过,我有2个关于这个功能的马赛克问题:
- 为什么长期级别名称正确断线时,简单的调用完成不是自动完成,?通过查看各种vcd教程,它看起来默认情况下应该处理该功能。
- 为什么vcd绘制空单元?例如,在我的dataframe study_filt中,我没有观察到homosex变量设置为“Other”。它可以被删除吗?
>
library(dplyr)
library(vcd)
library(MASS)
load(url("http://bit.ly/dasi_gss_data"))
study=dplyr::select(gss,year,homosex,vetyears)
study=filter(study, year>1974)
study=filter(study, year<1995 | year>2009)
study=group_by(study,year)
study_filt = filter(study,!all(is.na(homosex)) && !all(is.na(vetyears)))
study_filt <- as.data.frame(study_filt)
的功能镶嵌简单调用
vcd::mosaic(data=study_filt,~homosex+vetyears)
定制的呼叫处理长级别名称
vcd::mosaic(data=study_filt,~homosex+vetyears,
labeling=labeling_border(
rot_labels = c(90, 0, 90, 0),
just_labels=c("left","left","right","right"),
tl_varnames = FALSE,
gp_labels = gpar(fontsize = 9)))