I am working with the igraph package in R to visualise network flows.
library(igraph)
# Example Data:
b <- c("countryA", "countryB", "countryC", "countryA", "countryC", "countryA")
c <- c("countryB", "countryC", "countryA", "countryB", "countryA", "countryB")
d<- c(100, 200, 200, 300, 400, 200)
e <- c(5,12,10,24,25,12)
mydata <- data.frame(b,c,d,e)
colnames(mydata) <- c("exporteur", "partner", "tradeflow", "price")
# Plot in igraph
mydata.igraph <- graph.data.frame(mydata)
E(mydata.igraph)$label <- mydata[,3]
plot(mydata.igraph)
As you can see, my edge labels (labels of the arrows) are overlapping. How to solve this?
Thanks in advance!
This is the code to do it. It uses the edgelist instead of the igraph, but it is a cooler looking graph.
library(qgraph)
qgraph(mydata,edge.labels=T)
Check out this post for a more detail
Draw Network in R (control edge thickness plus non-overlapping edges)
And this help page for using qgraph: http://rgm3.lab.nig.ac.jp/RGM/R_rdfile?f=qgraph/man/qgraph.Rd&d=R_CC
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With