Я пытаюсь использовать функцию plot_grid
из пакета cowplot
R, чтобы соединить два графика. Однако я получал следующую ошибку:
Ошибка в переключателе (x [[2]] [[1]] $ name, C_abline = C_abline (x [[2]]), C_plot_new = C_plot_new (x [[2]]),: EXPR должен быть вектором длины 1
Поэтому при тестировании обеих графиков я обнаружил, что ошибка возникла из ggplot
, который я использовал grid_text. Таким образом, в моем примере я включил только один сюжет. Ниже вы можете воспроизвести проблему:
library(cowplot)
library(ggplot2)
library(ggforce)
library(grid)
### Example
circles <- as.data.frame(cbind(c(0.5, 1.5, 2.5), c(1, 2, 1), c(0.2, 0.2, 0.2)))
# Behold the some circles
ggplot() + geom_circle(aes(x0=V1, y0=V2, r=V3, fill=c("red", "blue", "green")), data=circles)+
theme_bw() + ylab(expression(symbol('\253'))) + xlab(expression(symbol('\253')))+ theme(legend.position="none",
axis.title.x=element_text(size = 50),
axis.text.x=element_blank(),
axis.ticks.x=element_blank(),
axis.title.y=element_text(size = 50),
axis.text.y=element_blank(),
axis.ticks.y=element_blank())
grid.text("Distinct", x = unit(0.04, "npc"), y = unit(0.80, "npc"))
exP <- recordPlot()
plot_grid(exP)
Я был бы рад получить любую идею, как использовать plot_grid для такого рода объектов (ggplot + grid_text).
grid.arrange
? - person Marco Sandri   schedule 17.10.2017recordPlot()
. Я рекомендую не использовать его, особенно когда вы работаете только с сеточной графикой, как здесь. См. Предлагаемый мной ответ для альтернатив. - person Claus Wilke   schedule 23.11.2017