我希望将所有三个“测试信息功能”线(每个模型一个)组合到一个相同的图形中。我有一个数据类别为1-5的李克特响应,共有400行,每组8列(每项一个)。我使用R中的mirt包在这些集合上运行了三个IRT模型,并生成了测试信息图。我想将来自三个不同(渐变响应)模型,三条线的IRT测试信息图合并在一个网格中。
plot(PFgrmodel29, type = 'info', xlim = c(-4, 4), ylim=c(0,85))
plot(PFgrmodel43, type = 'info', xlim = c(-4, 4), ylim=c(0,85))
plot(PFgrmodel57, type = 'info', xlim = c(-4, 4), ylim=c(0,85))
测试信息图示例:
如何用mirt,lattice,ggplot2或类似的方法实现此目的?
来自mirt包的图是一个格对象,因此您可以尝试使用gridExtra,因为您没有提供数据集,所以我在下面使用包中的示例数据集提供了示例代码:
library(mirt)
library(latticeExtra)
fulldata <- expand.table(LSAT7)
mod1 <- mirt(fulldata,1,SE=TRUE)
mod2 <- mirt(fulldata,1, itemtype = 'Rasch')
mod3 <- mirt(fulldata,1,itemtype='ideal')
key=list(columns=2,
text=list(lab=c("mod1","mod2","mod3")),
lines=list(lwd=4, col=c("blue","orange","red"))
)
p1 = plot(mod1,type="info",key=key)
p2 = update(plot(mod2,type="info"),col="orange")
p3 = update(plot(mod3,type="info"),col="red")
p1+p2+p3
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句