ggimage рисует каждое изображение в (x, y) во вращающемся окне просмотра; он должен вместо этого рисовать внутри повернутого окна просмотра, расположенного в (x, y).
library("ggplot2")
library("grid")
grid.newpage()
grid.points(x = 0.5, y = 0.8, default.units = "npc", pch="+",gp=gpar(cex=5))
grid.raster(png::readPNG(system.file("img", "Rlogo.png", package="png")),
x = 0.5, y = 0.8, vp = viewport(angle=45), height=unit(1,"cm"))
grid.raster(png::readPNG(system.file("img", "Rlogo.png", package="png")),
vp = viewport(x = 0.5, y = 0.8, angle=45), height=unit(1,"cm"))