所以,我想在我的ggplot中添加徽标页脚,但是我想通过可以与+
运算符一起使用的函数来这样做,所以我可以这样做:qplot(1:10, 1:10) + add_mylogo()
我可以得到我想要的东西:
library(magick)
library(ggplot2)
mylogo <- image_scale(image_read("https://upload.wikimedia.org/wikipedia/commons/f/f7/Stack_Overflow_logo.png"), "180")
qplot(1:10, 1:10) + labs(caption="")
grid::grid.raster(mylogo, x = .97, y = .02, just = c('right', 'bottom'), width = unit(1.2, 'inches'))
哪个生产:
我的问题是我想使用+
将其添加到绘图中。
所以我尝试了此:
library(cowplot)
library(magick)
library(ggplot2)
mylogo <- image_scale(image_read("https://upload.wikimedia.org/wikipedia/commons/f/f7/Stack_Overflow_logo.png"), "380")
qplot(1:3, 1:3)+ labs(caption="") +
draw_image(mylogo, x=3, y = .2, hjust=.7, vjust=0, scale = .5, clip=TRUE)
哪个生产:
所以现在我可以使用+
运算符,但是我不知道如何使用任何相对定位。我使用this post看到了annotate
关于相对定位的信息,并尝试了该方法,但是它不起作用
qplot(1:3, 1:3)+ labs(caption="") +
draw_image(mylogo, x = -Inf, y = Inf, hjust=.7, vjust=0, scale = .5, clip=TRUE)
Error in if (rasterRatio > vpRatio) { :
missing value where TRUE/FALSE needed
因此,使用grid
的第一个选项适用于相对定位,但不适用于+
运算符,使用cowplot
的第二个选项适用于+
运算符,但不适用于相对定位。有什么办法可以同时获得两者的?