相关疑难解决方法(0)

在ggplot2中创建任意窗格

在基本图形中,我可以通过执行以下操作创建4个面板图形窗格:

par(mfrow=c(2,2))
for (i in 1:4){
  plot(density(rnorm(100)))
}
Run Code Online (Sandbox Code Playgroud)

结果

在此输入图像描述

我想用ggplot2做同样的事情,但我无法弄清楚如何做到这一点.我不能使用facet,因为我的真实数据,与这个简单的例子不同,是非常不同的结构,我想要两个图表是点图表,两个图表是直方图.如何在ggplot2中创建面板或窗格?

r ggplot2

25
推荐指数
4
解决办法
4815
查看次数

多个不同大小的ggplots

grid.arrangegridExtra包中使用相对简单的方法在矩阵中排列多个图,但是ggplot2当一些图比其他图更大时,如何安排图(我正在处理的图)?在基础上,我可以使用layout()如下例子:

 nf <- layout(matrix(c(1,1,1,2,3,1,1,1,4,5,6,7,8,9,9), byrow=TRUE, nrow=3))
 layout.show(nf)
Run Code Online (Sandbox Code Playgroud)

ggplot情节的等价物是什么?

在此输入图像描述

包含的一些情节

library(ggplot2)
p1 <- qplot(x=wt,y=mpg,geom="point",main="Scatterplot of wt vs. mpg", data=mtcars)
p2 <- qplot(x=wt,y=disp,geom="point",main="Scatterplot of wt vs disp", data=mtcars)
p3 <- qplot(wt,data=mtcars)
p4 <- qplot(wt,mpg,data=mtcars,geom="boxplot")
p5 <- qplot(wt,data=mtcars)
p6 <- qplot(mpg,data=mtcars)
p7 <- qplot(disp,data=mtcars)
p8 <- qplot(disp, y=..density.., geom="density", data=mtcars)
p9 <- qplot(mpg, y=..density.., geom="density", data=mtcars)
Run Code Online (Sandbox Code Playgroud)

layout r ggplot2 gridextra gtable

22
推荐指数
5
解决办法
9525
查看次数

将多个图组合成一个 gif

我试图使用 caTools 包将多个图组合成一个 gif。

我的基本代码如下:

 for(我在 1:100){
     plot(....) // 绘制几个点和线,随着每个 i 略有变化
  }

我想将这些组合成一个 gif,以查看情节的“演变”。

但是对于来自 caTools 的 write.gif(),我需要提供一个图像作为输入。对于每个 i,我如何将绘图转换为图像而不需要

  1. 保存到光盘作为中间步骤
  2. 取决于 ImageMagick 或类似的外部依赖项。

请随时指出这是否是重复的。[从 R 中的一系列情节创建电影似乎没有回答这个问题]

编辑:基本上这需要我们将绘图转换为矩阵。由于每次有人保存情节时很可能会发生这种情况,因此应该不是很困难。但是我无法掌握如何准确地做到这一点。

r gif

3
推荐指数
1
解决办法
5993
查看次数

标签 统计

r ×3

ggplot2 ×2

gif ×1

gridextra ×1

gtable ×1

layout ×1