Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何用R中边两侧的文本绘制有向网络图(通过IGRAPHE、网络或其他软件包)?_R_Text_Graph_Label_Igraph - Fatal编程技术网

如何用R中边两侧的文本绘制有向网络图(通过IGRAPHE、网络或其他软件包)?

如何用R中边两侧的文本绘制有向网络图(通过IGRAPHE、网络或其他软件包)?,r,text,graph,label,igraph,R,Text,Graph,Label,Igraph,如何用R中边两侧的文本绘制有向网络图(通过IGRAPHE、网络或其他软件包) 变量(在向量自回归模型(VAR)中)位于节点中 Granger因果关系(F统计的p值)位于边的两侧。我把p值放在每个箭头的开头。我更加强调了重大的伤亡 我不知道如何通过iGraph或网络包或其他方式获得这样的网络图。阅读,似乎没有太多的选项来操作边标签,但您可以使用label.dist和label.degree来操作顶点标签。。 你可以这样做: g <- graph.empty(n = 3) g <-

如何用R中边两侧的文本绘制有向网络图(通过IGRAPHE、网络或其他软件包)

变量(在向量自回归模型(VAR)中)位于节点中

Granger因果关系(F统计的p值)位于边的两侧。我把p值放在每个箭头的开头。我更加强调了重大的伤亡

我不知道如何通过iGraph或网络包或其他方式获得这样的网络图。

阅读,似乎没有太多的选项来操作边标签,但您可以使用label.dist和label.degree来操作顶点标签。。 你可以这样做:

g <- graph.empty(n = 3) 
g <- graph(c(1, 2, 3, 2, 1, 3), directed = TRUE)
labels <- c("A", "B", "C", "D", "E", "F")
coords <- matrix(c(1, 1, 2, 2, 3, 3), nrow = 3)
plot(g, layout = coords, vertex.label = labels, vertex.label.dist = 3.5, vertex.label.degree = c(-pi/4, pi/2, pi, -pi/2, 0, 3*pi/4))
g正在阅读操作边标签的选项似乎不多,但您可以使用label.dist和label.degree来操作顶点标签。。
你可以这样做:

g <- graph.empty(n = 3) 
g <- graph(c(1, 2, 3, 2, 1, 3), directed = TRUE)
labels <- c("A", "B", "C", "D", "E", "F")
coords <- matrix(c(1, 1, 2, 2, 3, 3), nrow = 3)
plot(g, layout = coords, vertex.label = labels, vertex.label.dist = 3.5, vertex.label.degree = c(-pi/4, pi/2, pi, -pi/2, 0, 3*pi/4))

g您可以同时使用
edge.label
vertex.label
选项

library(igraph)
el <- data.frame(sender = c("lnbist1f","lnbist1f","lnbist1f",
                            "kur1f","kur1f","kur1f",
                            "lnaltin","lnaltin","lnaltin",
                            "mfaiz1f","mfaiz1f","mfaiz1f"),
                 receiver = c("mfaiz1f","lnaltin","kur1f",
                              "lnbist1f","lnaltin","mfaiz1f",
                              "mfaiz1f","lnbist1f","kur1f",
                              "lnbist1f","lnaltin","kur1f"),
                 pval = c(0.5,0.6,0.1, #I just typed random p-vals here
                          0.45,0.88,0.24,
                          0.12,0.51,0.99,
                          0.001,0.056,0.123)
                 )
arrows = c(2,1,0,0,1,1,1,0,0,2,1,1)
el <- as.matrix(el)
g <- graph_from_edgelist(el[,1:2], directed = T)
coordinates <- matrix(c(4, 4, 1, 1, 4, -2,7,1), nrow = 4, byrow=TRUE)
plot(g, edge.label=el[,3], 
     vertex.shape="crectangle", 
     vertex.size=45,
     edge.arrow.mode=arrows,
     layout = coordinates)
库(igraph)

el您可以同时使用
edge.label
vertex.label
选项

library(igraph)
el <- data.frame(sender = c("lnbist1f","lnbist1f","lnbist1f",
                            "kur1f","kur1f","kur1f",
                            "lnaltin","lnaltin","lnaltin",
                            "mfaiz1f","mfaiz1f","mfaiz1f"),
                 receiver = c("mfaiz1f","lnaltin","kur1f",
                              "lnbist1f","lnaltin","mfaiz1f",
                              "mfaiz1f","lnbist1f","kur1f",
                              "lnbist1f","lnaltin","kur1f"),
                 pval = c(0.5,0.6,0.1, #I just typed random p-vals here
                          0.45,0.88,0.24,
                          0.12,0.51,0.99,
                          0.001,0.056,0.123)
                 )
arrows = c(2,1,0,0,1,1,1,0,0,2,1,1)
el <- as.matrix(el)
g <- graph_from_edgelist(el[,1:2], directed = T)
coordinates <- matrix(c(4, 4, 1, 1, 4, -2,7,1), nrow = 4, byrow=TRUE)
plot(g, edge.label=el[,3], 
     vertex.shape="crectangle", 
     vertex.size=45,
     edge.arrow.mode=arrows,
     layout = coordinates)
库(igraph)

谢谢,真的很有帮助。也许,基于您的代码,可以很容易地获得图中的完整网络图。上面的代码将vertex.label对象用于其他目的。但是,如何强制使用节点名称(即,上面提到的kur1f、lnbist1f、lnaltin、mfaiz1f)?!!谢谢,真的很有帮助。也许,基于您的代码,可以很容易地获得图中的完整网络图。上面的代码将vertex.label对象用于其他目的。但是,如何强制使用节点名称(即,上面提到的kur1f、lnbist1f、lnaltin、mfaiz1f)?!!谢谢你,paqmo。这个数字正是我想要的。不幸的是,作为图形构造的新手,我无法获得该图形。请在这里指定代码中的g对象:
plot(g,edge.label=el[,3],vertex.shape=“crectangle”,vertex.size=45,edge.arrow.mode=el[,4])
。在缓冲区,我有卡洛斯的g.@ErdoganCEVHER。Oops,g应该是从edgelist创建的图形对象——忘记包含该代码。我已经更新了答案,将其包括在内。我完成了g定义中缺失的部分(
g似乎是
edge.arrow.mode
选项如何读取矩阵的问题。将向量分配给一个对象并使用它——它对我有效。宾果,它通过一个小的编辑工作。请删除
el中多余的逗号谢谢,paqmo。那个数字正是我想要的。不幸的是,作为图形构造的新手,我无法B获得该图。请在此处的代码中指定g对象:
绘图(g,edge.label=el[,3],vertex.shape=“crectangle”,vertex.size=45,edge.arrow.mode=el[,4])
。在缓冲区中,我有Carlos的g.@ErdoganCEVHER。哦,g应该是从edgelist创建的图形对象——忘记包含该代码。我已更新了答案以包含该代码。我已完成了g定义中缺少的部分(
g似乎是
edge.arrow.mode
选项如何读取矩阵的问题。将向量分配给一个对象并使用它——它对我有效。宾果,它只进行了少量编辑。请删除
el中多余的逗号