如何在给定两个相同大小的向量的情况下在R中创建图

问题描述 投票:0回答:1

假设我在R中有两个向量(长度分别为x和y),并且我想创建一个图(就像在图论中一样)。当所有小于或等于两个向量的长度的所有n都在y中的第n个项和x中的第n个项之间创建边时,该如何做?我专门尝试使用igraph包来做到这一点。

r graph-theory
1个回答
1
投票

首先让我们为xy生成一些样本数据>

set.seed(2018)
x <- sample(1:5, 10, replace = T)
y <- sample(1:5, 10, replace = T)

让我们检查数据

data.frame(x, y)
#   x y
#1  3 3
#2  4 3
#3  5 1
#4  2 1
#5  5 5
#6  1 3
#7  3 1
#8  4 3
#9  2 3
#10 4 5

我们现在可以使用igraph::graph_from_data_frame创建一个igraph对象,其中data.frame(x, y)中的每一行都对应于xy节点之间的边。

library(igraph)
ig <- graph_from_data_frame(data.frame(x, y))
plot(ig)

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.