У меня странная проблема с Rstudio: если сценарий вызывает функции ggplot2 для отображения графика, то использование Source для запуска сценария не создает графики. Если я выбираю весь сценарий с Ctrl+A
, затем Выполнить текущую строку или выбор ( Ctrl+Enter
), то сюжет делает дисплей. Аналогичным образом, ввод команд построения в консоль дает правильный результат.
Например:
library(ggplot2)
p = ggplot(mtcars, aes(wt, mpg))
p + geom_point()
Будет выдавать результат только в том случае, если он вставлен в консоль, но не из источника.
Есть и другие вопросы по этому поводу, но ни один из них бесполезен:
- ggplot2 Функция ggsave заставляет графическое устройство не отображать графики, ложно утверждает, что проблема исправлена в более новых версиях, но это не так.
- RStudio - ggplot, не сохраняющий первый график при печати и сохранении нескольких графиков в скрипте, был закрыт как дубликат, но это не только не дубликат, но и
dev.off()
обходной путь не работает ("Error in dev.off() : cannot shut down device 1 (the null device)
")
Как я могу заставить Rstudio отображать графики при исходном скрипте? Я использую Rstudio 0.98.1062 и R 3.1.1.
Недавно я столкнулся с этим вопросом и понял, что самый современный способ - позвонить
show(p)
после создания сюжета.источник
Я нашел этот вопрос при поиске аналогичной проблемы (графики не отображаются в RStudio). Я пытался устранить неполадки в сложном блоке ggplot2, выполняя его по частям, но не смог ничего отобразить в окне графика.
Причина:
tiff()
функция, которую я открыл ранее, не закрылась.Решение: я запускал
dev.off()
несколько раз, пока все мои предыдущиеtiff()
функции не завершились, затем я смог создать графики в RStudio и просмотреть результаты в окне графика.источник