Я хотел бы добавить цитату в сноске к моему графику трехпанельной сетки фасетов, созданному в R. Это сноска, указывающая на источник данных. В идеале я бы хотел, чтобы он был ниже и вне всех трех осей - желательно в нижнем левом углу.
Я использую ggplot2
, а также ggsave()
. Это означает, что я не могу использовать решения на основе grid.text()
, потому что они используются только в окне x11()
и не могут быть добавлены к объекту ggplot.
Использование вместо этого png() ...code... dev.off()
не представляется возможным, потому что мне нужны параметры изменения размера ggsave
, и я считаю, что эта команда обеспечивает более качественные и четкие отпечатки (которые также намного быстрее, потому что я не печатаю на экран).
Вот мой базовый код:
p1 <- ggplot(data, aes(date, value))
facet_grid(variable ~ .) + geom_point(aes(y =value), size=1) +
theme_bw() +
opts(title=mytitle)
print(p1)
ggsave("FILE.png",width=mywidth, height=myheight, p1, dpi=90)
Я пробовал:
p1 <- ggplot(data, aes(date, value))
facet_grid(variable ~ .) + geom_point(aes(y =value), size=1) +
theme_bw() +
opts(title=mytitle)
print(p1)
grid.text(unit(0.1,"npc"),0.025,label = "Data courtesy of Me")
grid.gedit("GRID.text", gp=gpar(fontsize=7))
ggsave("FILE.png",width=mywidth, height=myheight, p1, dpi=90)
Это правильно помещает сноску в нижний левый угол дисплея x11 (), внешний по отношению к графикам, но, к сожалению, поскольку он не применяется к объекту p1, он не сохраняется командой ggsave.
Я также пробовал:
p1 <- ggplot(data, aes(date, value))
facet_grid(variable ~ .) + geom_point(aes(y =value), size=1) +
theme_bw() +
opts(title=mytitle) +
annotate("text", label = "Footnote", x = 0, y = 10, size = 5, colour = "black") +
print(p1)
ggsave("FILE.png",width=mywidth, height=myheight, p1, dpi=90)
Это успешно печатается с использованием ggsave, однако имеет следующие проблемы:
- Это повторяется 3 раза в каждой из 3 граней, а не 1 раз.
- Он содержится внутри сюжетов, а не вне их.
- Текст сложно разместить --- похоже, используются блоки сюжета (моя ось x - это дата, поэтому 0 указывает на 1970 год).
- Размер текста не меняется, несмотря на мой параметр размера.
Пара ссылок по теме, когда я исследовал это ...
-
(не работает с ggsave)
Как пометить barplot в ggplot с ярлыками в другом результате теста?
(находится внутри сюжета, а не снаружи / под сюжетом)
Разные шрифты и размеры в текстовых записях меток в ggplot2
(не работает с ggsave)
проблема с сохранением файла PDF в R с помощью ggplot2