0

我已经用igraph package绘制了 11 个不同的网络地图。我想像grid.arrange函数一样将它们安排在同一页面(比如 4x3)中。但该grid.arrange功能仅适用于grob对象。

我是否可以实现上述目的,不一定使用该grid.arrange功能,而只是一种在同一页面中面板网络地图的方法。

或者是否可以将igraph对象更改grobgrid.arrange函数可以使用的对象?

下面生成四星网络作为示例代码;

library(igraph)
library(gridExtra)
g1 <- graph.ring(10)
g2 <- graph.ring(12)
g3 <- graph.ring(13)
grid.arrange(g1, g2, g3, ncol=3)
4

1 回答 1

3

是你要找的吗?

layout(matrix(c(1,2,3), 1, 3, byrow = TRUE))
plot(g1)
plot(g2)
plot(g3)

在此处输入图像描述

[编辑:考虑到OP的评论]

m <- matrix(c(rep(1,10), rep(2,10), rep(3,10), rep(4,6), rep(5,6), rep(6,6), rep(7,6), rep(8,6), rep(9,10), rep(10,10), rep(11,10)), 3, 30, byrow=TRUE)
nf <- layout(m)
layout.show(nf)

在此处输入图像描述

于 2014-07-01T08:53:09.253 回答