Я пытался рисовать два графика, используя библиотеку ggplot R в RStudio. Проблема в том, что, когда я рисую два в пределах одной функции, отображается только последний (в представлении «Графики» RStudio), а первый исчезает. Хуже того, когда я запускаю ggsave()
после каждого графика - который сохраняет их в файл - ни один из них не отображается (но файлы сохраняются, как ожидалось). Тем не менее, я хочу посмотреть, что я сохранил на сюжетах, как это было раньше.Ggplot не показывает графики в исходной функции
Есть ли способ, который я могу отображать, что я буду строить в RTSudio's участки посмотреть, а также сохранить их? Более того, когда графики не сохраняются, почему проблема отображения возникает, когда имеется более одного сюжета? (то есть, почему он показывает последний, но не тот, который был раньше?)
Код с рисунками ниже. Я удалил некоторые части, потому что они кажутся ненужными (но могут добавлять их, если они действительно актуальны).
HHIplot = ggplot(pergame)
# some ggplot geoms and misc. here
ggsave(paste("HHI Index of all games,",year,"Finals.png"),
path = plotpath, width = 6, height = 4)
HHIAvePlot = ggplot(AveHHI, aes(x = AveHHI$n_brokers))
# some ggplot geoms and misc. here
ggsave(paste("Average HHI Index of all games,",year,"Finals.png"),
path = plotpath, width = 6, height = 4)
Я уже взглянули here и here но и не помогли. Добавление print(HHIplot)
или print(HHIAvePlot)
после строк ggsave()
не отображает график.
Большое спасибо заранее.
Update 1: Решение, предлагаемое ниже не работает, хотя она работает для образца кода ответа на вызов в. Я передал объекты ggplot в .Globalenv
, а print()
дал мне пустой серый квадрат на участке (я думаю, это пустой объект ggplot без слоев). Я думаю, что проблема может быть в некоторых слоях или манипуляторах, которые я использовал, поэтому я привел полный код для одного объекта ggplot ниже. Есть предположения? (Примечание: я пытался поставить assign()
линию во всех возможных местах по отношению к ggsave()
и ggplot()
.)
HHIplot = ggplot(pergame)
HHIplot +
geom_point(aes(x = pergame$n_brokers, y = pergame$HHI)) +
scale_y_continuous(limits = c(0,10000)) +
scale_x_discrete(breaks = gameSizes) +
labs(title = paste("HHI Index of all games,",year,"Finals"),
x = "Game Size", y = "Herfindahl-Hirschman Index") +
theme(text = element_text(size=15),axis.text.x = element_text(angle = 0, hjust = 1))
assign("HHIplot",HHIplot, envir = .GlobalEnv)
ggsave(paste("HHI Index of all games,",year,"Finals.png"),
path = plotpath, width = 6, height = 4)
Графическая панель графика RStudio имеет две левую/правую стрелки в левом верхнем углу, которые можно использовать для перемещения вперед и назад в истории графиков, напечатанных на текущем устройстве. – joran
Joran, действительно, это так, и первый сюжет не появляется, когда я делаю это, чтобы посмотреть его.Я часто использую эти стрелки. –