Я пытаюсь использовать grid.arrange для объединения нескольких типов графиков / таблиц, одним из которых является корреляционная матрица, использующая corrplot
.Есть ли способ преобразовать corpplot в grob или экспортировать / импортировать как изображение, совместимое с grid.arrange
?Поскольку другие графики, которые я объединяю, взяты из ggplot и tableGrob, я не могу использовать par(mfrow = c(2, 2))
или layout(matrix(1:2))
, как предлагается в других публикациях.
P1 <- corrplot(PANAcor, order="hclust", addgrid.col = "gray",
type="full", col = col2(50), tl.cex=1.5, tl.col="black",
method="color", tl.pos="lt", tl.srt=45, hclust.method = "average",
cl.ratio = 0.25, cl.align = "l", number.cex = 2)
summary <- grid.arrange(
top=textGrob(sprintf("%s Summary",subject), gp=gpar(fontsize=16,font=8)),
blank, P1, P2,
blank, T1, T2,
ncol=3, widths = c(0.1, 3, 3),
nrow=2, heights= c(1, 1),
bottom = textGrob(sprintf("%s run %s",version,runtime),
gp=gpar(fontsize=6,font=8), hjust=-1)
)
Ошибка в gList (list (1, 0,45, 0,62, 0,55, 0,68, 0,64, -0,13, -0,37, -0,22: в gList разрешены только 'grobs'). Дополнительно: предупреждающее сообщение: In grob $ wrapvp <- vp: принудительное выполнение LHS длясписок </p>
Данные:
PANAcor <- structure(c(1, 0.56, 0.68, -0.49, -0.4, -0.39, 0.56, 1, 0.64, -0.55,
-0.49, -0.54, 0.68, 0.64, 1, -0.69, -0.57, -0.65, -0.49,
-0.55, -0.69, 1, 0.82, 0.73, -0.4, -0.49, -0.57, 0.82, 1,
0.71, -0.39, -0.54, -0.65, 0.73, 0.71, 1),
.Dim = c(6L, 6L),
.Dimnames = list(c("Anxious", "Irritable", "Upset", "Happy",
"Enthusiastic", "Outgoing"),
c("Anxious", "Irritable", "Upset", "Happy",
"Enthusiastic", "Outgoing")))
col2 <- colorRampPalette(c("#7bffff","#7bbdff","#0000ff","black",
"#ff1a1a","#ff8000","#ffff4d"))