Размер шрифта на графиках mirt

#r #plot #lattice

#r #сюжет #решетка

Вопрос:

Я пытаюсь увеличить размер шрифта на mirt графиках, однако пока я могу увеличить размер только тиков:

 library(mirt)
x <- mirt(Science, 1, SE=TRUE)
plot(x)
 

 plot(x, scales = list(cex = c(1.4)))
 

Как я могу увеличить размер оси и основного заголовка? Я попытался добавить xlab = list(cex = 1.4) , однако я получаю сообщение об ошибке:

 Error in xyplot.formula(score ~ Theta, plt, ylim = c(sum(mins) - ybump_full,  : 
  formal argument "xlab" matched by multiple actual arguments
 

**РЕДАКТИРОВАТЬ: **
Некоторые части могут быть увеличены, trellis.par.set() как предложено @user20650, однако он не включает размер шрифта легенды.

 trellis.par.set(par.xlab.text = list(cex = 1.4), par.ylab.text = list(cex = 1.4))
plot(x, type = "trace", facet_items = FALSE, scales = list(cex = 1.4), 
     par.strip.text = list(cex = 1.4), main = FALSE)
 

Более того, это не влияет на следующий график:

 plot(x, type = "infoSE", facet_items = FALSE, scales = list(cex = 1.4), 
     par.strip.text = list(cex = 1.4), main = FALSE)
 

Комментарии:

1. Функция plot, похоже xlab , жестко запрограммирована на «xlab = expression (theta)»; Я полагаю, вы могли бы обновить глобальные параметры, т. Е. trellis.par.set(par.xlab.text=list(cex=10),par.main.text=list(cex=10)) ; plot(x) . Посмотрите trellis.par.get() , что можно обновить. Является ли это лучшим способом или нет??

2. Это работает довольно хорошо. Большое вам спасибо 🙂

3. Мне просто интересно, можно ли увеличить размер шрифта всех элементов с помощью общей команды (включая, например, легенды и т. Д.)?

4. Почему бы вам не открыть заявку на github авторов?

Ответ №1:

Вы можете задать параметры глобально с trellis.par.set помощью параметра или перейти к отдельному графику с помощью par.settings параметра. trellis.par.get() может использоваться для получения списка имен объектов, которые могут быть обновлены.

Так, например, для обновления определенных параметров на графике можно использовать следующее

 plot(x, type = "trace", 
     par.settings=list(
       par.xlab.text=list(cex=3, col="red"),
       par.main.text=list(cex=2)))
 

Или для глобального обновления используйте

 trellis.par.set(par.xlab.text=list(cex=3, col="red"),
                par.main.text=list(cex=2)
                )
 

Использование grid.pars=list(cex=3)) , похоже, обновляет все размеры текста

Комментарии:

1. grid.pars = list(cex = 3) делает именно то, что я хотел. Спасибо!