W R, kreśląc losowe efekty z lmer (pakiet lme4) przy użyciu qqmath lub dotplot: jak sprawić, by wyglądał fantazyjnie?

Funkcja qqmath tworzy świetne wykresy gąsienic losowych efektów przy użyciu danych wyjściowych z pakietu lmer. Oznacza to, że qqmath jest świetny w wykreślaniu przechwyceń z modelu hierarchicznego z ich błędami wokół oszacowania punktu. Przykład funkcji lmer i qqmath znajduje się poniżej przy użyciu wbudowanych danych w pakiecie lme4 o nazwie Dyestuff. Kod wygeneruje model hierarchiczny i ładny wykres przy użyciu funkcji ggmath.

library("lme4")
data(package = "lme4")

# Dyestuff 
# a balanced one-way classiï¬cation of Yield 
# from samples produced from six Batches

summary(Dyestuff)             

# Batch is an example of a random effect
# Fit 1-way random effects linear model
fit1 <- lmer(Yield ~ 1 + (1|Batch), Dyestuff) 
summary(fit1)
coef(fit1) #intercept for each level in Batch 

# qqplot of the random effects with their variances
qqmath(ranef(fit1, postVar = TRUE), strip = FALSE)$Batch

Ostatni wiersz kodu tworzy naprawdę ładny wykres każdego punktu przecięcia z błędem wokół każdego oszacowania. Ale formatowanie funkcji qqmath wydaje się być bardzo trudne, a ja starałem się sformatować fabułę. Wymyśliłem kilka pytań, na które nie mogę odpowiedzieć, i myślę, że inni mogą również skorzystać, jeśli używają kombinacji lmer / qqmath:

Czy istnieje sposób na skorzystanie z powyższej funkcji qqmath i dodanie kilku opcji, takich jak uczynienie niektórych punktów pustymi lub wypełnionymi lub różnych kolorów dla różnych punktów? Na przykład, czy możesz wypełnić punkty dla A, B i C zmiennej Batch, ale reszta punktów jest pusta?Czy możliwe jest dodanie etykiet osi dla każdego punktu (na przykład wzdłuż górnej lub prawej osi y)?Moje dane są bliższe 45 punktom przechwytywania, więc możliwe jest dodanie odstępów między etykietami, aby nie wpadały na siebie? GŁÓWNIE, interesuje mnie rozróżnianie / oznaczanie punktów na wykresie, co wydaje się być niewygodne / niemożliwe w funkcji ggmath.

Do tej pory dodawanie dowolnej dodatkowej opcji w funkcji qqmath powoduje błędy, w których nie dostanę błędów, jeśli jest to standardowy wykres, więc tracę.

TAKŻE, jeśli uważasz, że istnieje lepszy pakiet / funkcja do wykreślania przechwyceń z wyjścia lmer, chciałbym to usłyszeć! (na przykład, czy możesz wykonać punkty 1-3 za pomocą dotplot?)

Dzięki.

EDYCJA: Jestem również otwarty na alternatywny dotplot, jeśli można go rozsądnie sformatować. Po prostu lubię wygląd fabuły ggmath, więc zaczynam od pytania na ten temat.

questionAnswers(3)

yourAnswerToTheQuestion