Repository navigation
Expand file tree
/
Copy pathanalysis.R
More file actions
49 lines (28 loc) · 2.04 KB
/
Copy pathanalysis.R
File metadata and controls
49 lines (28 loc) · 2.04 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
### affiliation matrix
require(Matrix)
require(igraph)
require(networkD3)
mzes_proj_members <- readRDS('mzes_proj_members.RDS')
A <- spMatrix(nrow=length(unique(mzes_proj_members$member)),
ncol=length(unique(mzes_proj_members$proj_num)),
i = as.numeric(factor(mzes_proj_members$member)),
j = as.numeric(factor(mzes_proj_members$proj_num)),
x = rep(1, length(as.numeric(mzes_proj_members$member))))
row.names(A) <- levels(factor(mzes_proj_members$member))
colnames(A) <- levels(factor(mzes_proj_members$proj_num))
### The A X t(A) is the adjacency Matrix
######################
adj_mat <- tcrossprod(A)
mzes_network <- graph.adjacency(adj_mat, "undirected", weighted = TRUE, diag = FALSE)
V(mzes_network)$bet <- betweenness(mzes_network, directed = FALSE, weights = V(mzes_network)$weight)
#V(mzes_network)$constraint <- constraint(mzes_network, weights = V(mzes_network)$weight)
comm <- cluster_walktrap(mzes_network)
V(mzes_network)$comm <- membership(comm)
plot(mzes_network, vertex.size = V(mzes_network)$bet / 300, vertex.label = ifelse(V(mzes_network)$bet > 20, V(mzes_network)$name, NA), vertex.color = V(mzes_network)$comm)
####################
mzes_network_d3 <- igraph_to_networkD3(mzes_network, group = V(mzes_network)$comm)
mzes_network_d3$nodes$bet <- V(mzes_network)$bet / 3
forceNetwork(Links = mzes_network_d3$links, Nodes = mzes_network_d3$nodes, Source = 'source', Target = 'target', NodeID = 'name', Group = 'group', Nodesize = 'bet', fontSize = 30)
open_link <- 'window.open("http://www.mzes.uni-mannheim.de/d7/en/profiles/" + d.name, "_new")'
forceNetwork(Links = mzes_network_d3$links, Nodes = mzes_network_d3$nodes, Source = 'source', Target = 'target', NodeID = 'name', Group = 'group', Nodesize = 'bet', fontSize = 30, clickAction = open_link)
saveNetwork(forceNetwork(Links = mzes_network_d3$links, Nodes = mzes_network_d3$nodes, Source = 'source', Target = 'target', NodeID = 'name', Group = 'group', Nodesize = 'bet', fontSize = 30, clickAction = open_link), file = "mzes_d3.html")