Объединение графиков grid.table и base package в виде R

Я пытаюсь объединить таблицы из grid.table вместе с графиками из базового пакета в один график. Насколько я понимаю, grid.table выдает тот же тип вывода, что и ggplot. Таким образом, проблема похожа на эту в этой теме:

Объедините базовую графику и графику ggplot в окне R figure

Я пытался применить решение из этой темы, но оно не работает для меня. Первый стол находится в правильном положении, а второй нет. Решение из этого потока работает, если у меня не более 1 таблицы, созданной grid.table. Какие изменения я должен сделать, чтобы он работал для нескольких таблиц?

Вот мой код:

library(gridBase)
library(gridExtra)

pdf("test-grid.pdf")
par(mfrow=c(2,2))

data(mtcars)
sample_table1 <- matrix(1,3,5)
sample_table2 <- matrix(2,2,2)

plot.new()
vps <- baseViewports()
pushViewport(vps$figure)
vp1 <-plotViewport()
grid.table(sample_table1)

plot.new()
vps <- baseViewports()
pushViewport(vps$figure)
vp1 <-plotViewport()
grid.table(sample_table2)

plot(mtcars$mpg, mtcars$cyl)
plot(mtcars$disp, mtcars$hp)

dev.off()

Ответы на вопрос(1)

Ваш ответ на вопрос