Add nodes and edges to a sigmajs graph.

sg_nodes(sg, data, ...)

sg_edges(sg, data, ...)

sg_edges2(sg, data)

sg_nodes2(sg, data)

Arguments

sg

An object of class sigmajsas intatiated by sigmajs.

data

Data.frame (or list) of nodes or edges.

...

Any column name, see details.

Details

nodes: Must pass id (unique), size and color. If color is omitted than specify defaultNodeColor in sg_settings otherwise nodes will be transparent. Ideally nodes also include x and y, if they are not passed then they are randomly generated, you can either get these coordinates with sg_get_layout or sg_layout.

edges: Each edge also must include a unique id as well as two columns named source and target which correspond to node ids. If an edges goes from or to an id that is not in node id.

Note

node also takes a SharedData.

Functions

  • Functions ending in 2 take a list like the original sigma.js JSON.

  • Other functions take the arguments described above.

Examples

nodes <- sg_make_nodes() edges <- sg_make_edges(nodes) sg <- sigmajs() %>% sg_nodes(nodes, id, label, size, color) %>% sg_edges(edges, id, source, target) sg # no layout # layout sg %>% sg_layout() # directed graph edges$type <- "arrow" # directed # omit color sigmajs() %>% sg_nodes(nodes, id, label, size) %>% sg_edges(edges, id, source, target, type) %>% sg_settings(defaultNodeColor = "#141414") # all source and target are present in node ids all(c(edges$source, edges$target) %in% nodes$id)
#> [1] TRUE