Сноска ggplot2
Каков наилучший способ добавить сноску в конец графика, созданного с помощью ggplot2? Я попытался использовать комбинацию логики, отмеченной здесь http://www.r-bloggers.com/r-good-practice-%E2%80%93-adding-footnotes-to-graphics/ а также ggplot2 функция аннотирования
p + annotate("text",label="Footnote",
x=unit(1,"npc") - unit(2, "mm"),y=unit(2, "mm"),
just=c("right", "bottom"),gp=gpar(cex= 0.7, col=grey(.5)))
но я получаю сообщение об ошибке "Ошибка в as.data.frame.default(x[[i]], необязательно = TRUE, stringsAsFactors = stringsAsFactors): невозможно привести класс c("unit.arithmetic", "unit") в data.frame".
2 ответа
Решение
Я бы использовал что-то вроде этого:
pdf("filename.pdf", width=10, height=6) # open an appropriate graphics device
print(p)
makeFootnote() # from webpage above (uses grid.text; ggplot2 is based on grid)
dev.off()
Используйте функцию labs(), чтобы добавить сноску непосредственно к графику.
p <- ggplot(mtcars, aes(mpg, wt, colour = cyl)) +
geom_point()
p + labs(caption = "(Pauloo, et al. 2017)")