Пропустить пустую панель, используя пакет решетки, программирование на R

Я хочу пропустить пустую панель, используя решетку пакета в R.

set.seed(1)
df1 <- data.frame("treatment" = c(rep("A",16),rep("B",16),rep("C",16)),
                  "disease_type" = c(rep("1",8),rep("2",8)),
                  "days_after_application" = rep(c(rep("10-24",4),rep("24-48",4)),6),
                  "severity" = rnorm(48, mean = 80, sd = 5))
df1[(df1$disease_type == "2" & df1$days_after_application == "24-48"),"severity"] <- NA
library(lattice)
figure1 <- bwplot(treatment~severity|days_after_application+disease_type,
                  data = df1,layout = c(2,2),
                  strip = strip.custom(strip.names = TRUE))
jpeg("figure1.jpeg")
print(figure1)
dev.off()

Вот что я получаюРисунок 1

Мой вопрос, как я могу удалить / пропустить пустую панель в правом верхнем углу БЕЗ изменения макета?

Я пробовал следующий код. Тем не менее, это не работает.

figure2 <- bwplot(treatment~severity|days_after_application+disease_type,
                  data = df1,layout = c(2,2),
                  strip = strip.custom(strip.names = TRUE),
                  skip = c(FALSE,FALSE,FALSE,TRUE))
jpeg("figure2.jpeg")
print(figure2)
dev.off()

Вот что я получил

Фигура 2

Я также попробовал следующие коды. Но это не то, что я хочу, так как мне нужны полоски 2 уровня.

df1[(df1$disease_type == "2" & df1$days_after_application == "24-48"),] <- NA
bwplot(treatment~severity|interaction(days_after_application,disease_type),
       data = df1,layout = c(2,2),
       strip = strip.custom(strip.names = TRUE))

Спасибо!

1 ответ

Обратитесь за помощью к профессору в Темплском университете.

Вот его решение:

figure4 <- bwplot(treatment~severity|days_after_application+disease_type,
                  data = df1,layout = c(2,2),
                  strip = strip.custom(strip.names = TRUE),
                  skip = c(FALSE,FALSE,FALSE,TRUE),
                  scales=list(alternating=FALSE),  ## keep x-scale on bottom
                  between=list(x=1, y=1))          ## space between panels
pdf("figure4%03d.pdf",onefile = FALSE) ## force two pages in file.
print(figure4)
dev.off()
Другие вопросы по тегам