igraph_to_networkD3 {networkD3} | R Documentation |
Function to convert igraph graph to a list suitable for networkD3
Description
Function to convert igraph graph to a list suitable for networkD3
Usage
igraph_to_networkD3(g, group, what = "both")
Arguments
g |
an |
group |
an object that contains node group values, for example, those
created with igraph's |
what |
a character string specifying what to return. If
|
Value
A list of link and node data frames or only the link or node data frames.
Examples
# Load igraph
library(igraph)
# Use igraph to make the graph and find membership
karate <- make_graph("Zachary")
wc <- cluster_walktrap(karate)
members <- membership(wc)
# Convert to object suitable for networkD3
karate_d3 <- igraph_to_networkD3(karate, group = members)
# Create force directed network plot
forceNetwork(Links = karate_d3$links, Nodes = karate_d3$nodes,
Source = 'source', Target = 'target', NodeID = 'name',
Group = 'group')
## Not run:
# Example with data from data frame
# Load data
## Original data from http://results.ref.ac.uk/DownloadSubmissions/ByUoa/21
data('SchoolsJournals')
# Convert to igraph
SchoolsJournals <- graph.data.frame(SchoolsJournals, directed = FALSE)
# Remove duplicate edges
SchoolsJournals <- simplify(SchoolsJournals)
# Find group membership
wt <- cluster_walktrap(SchoolsJournals, steps = 6)
members <- membership(wt)
# Convert igraph to list for networkD3
sj_list <- igraph_to_networkD3(SchoolsJournals, group = members)
# Plot as a forceDirected Network
forceNetwork(Links = sj_list$links, Nodes = sj_list$nodes, Source = 'source',
Target = 'target', NodeID = 'name', Group = 'group',
zoom = TRUE, linkDistance = 200)
## End(Not run)
[Package networkD3 version 0.4 Index]