如何将图形旋转特定角度?

10
我想通过自定义角度旋转一个ggplot2图形。我找到了如何使用element_text(angle = 20)旋转坐标轴文本。我希望能够对整个图形做类似的操作。
可复现的示例:
set.seed(123)

data_plot <- data.frame(x = sort(rnorm(1000)),
                        y = sort(rnorm(1000)))

ggplot(data_plot, aes(y, x)) +
    geom_line() # + theme(axis.title.x = element_text(angle = 20))

这个图应该被旋转。

enter image description here


1
除了剪辑之外,这个答案可以实现你的需求。我相信有一种方法可以将一个视口嵌套在另一个视口中以获得你想要的结果。 - Gregor Thomas
@Gregor 谢谢,完美的解决方案! - Joachim Schork
如何将两个旋转的ggplot组合在一起? - tjebo
1个回答

7
这是一个大致的想法,调用你的图表p:
library(grid)
pushViewport(viewport(name = "rotate", angle = 20, clip = "off", width = 0.7, height = 0.7))
print(p, vp = "rotate")

enter image description here

你可能需要调整 widthheight 以达到你想要的角度和宽高比。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接