Learn R Programming

⚠️There's a newer version (0.1.5) of this package.Take me there.

sigmajs

sigmajs for R.

With the rise in popularity of networks, it is important for R users to have access to a package that allows visualising the aforementioned networks in a highly configurable, interactive and dynamic manner. sigmajs is a fully-fledged wrapper for the sigma.js JavaScript library.

The sigma.js JavaScript library is described as follows on its website:

Sigma is a JavaScript library dedicated to graph drawing. It makes easy to publish networks on Web pages, and allows developers to integrate network exploration in rich Web applications

Install

# install.packages("devtools")
devtools::install_github("JohnCoene/sigmajs") # github
devtools::install_bitbucket("JohnCoene/sigmajs") # bitbucket

Examples

Most functions have corresponding demo(), see documentation and shiny demo.

Note that the graphs do not work in the RStudio viewer, and thus open in your default browser.

library(sigmajs)

# generate data
nodes <- sg_make_nodes()
edges <- sg_make_edges(nodes)

# visualise
sigmajs() %>%
	sg_nodes(nodes, id, label, size, color) %>%
	sg_edges(edges, id, source, target)

# from igraph 
data("lesmis_igraph")
 
layout <- igraph::layout_with_fr(lesmis_igraph)

sigmajs() %>%
	sg_from_igraph(lesmis_igraph, layout)

# from GEXF
gexf <- system.file("examples/arctic.gexf", package = "sigmajs")

sigmajs() %>% 
	sg_from_gexf(gexf) 

# proxies demos
demo(package = "sigmajs")

Contributing

See the contrinuting guidelines if you encounter any issue. Please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms.

Copy Link

Version

Install

install.packages('sigmajs')

Monthly Downloads

208

Version

0.1.1

License

MIT + file LICENSE

Maintainer

John Coene

Last Published

August 31st, 2018

Functions in sigmajs (0.1.1)

sg_cluster

Cluster
sg_layout

Layouts
sg_nodes

Add nodes and edges
sg_add_nodes_delay_p

Add nodes or edges with a delay
sg_add_nodes_p

Add nodes or edges
lesmis_edges

Edges from co-appearances of characters in "Les Miserables"
sg_from_igraph

Create from igraph
sg_kill

Kill
sg_export_svg

Export
sg_filter_gt_p

FIlter
sg_neighbours

Highlight neighbours
lesmis_igraph

Co-appearances of characters in "Les Miserables" as igraph object
lesmis_nodes

Nodes from co-appearances of characters in "Les Miserables"
sg_progress

Text
sg_refresh_p

Refresh instance
sg_noverlap

No overlap
sg_relative_size

Relative node sizes
sg_settings

Settings
reexports

Objects exported from other packages
sg_add_node_p

Add node or edge
sg_add_nodes

Add nodes and edges
sg_force

Add forceAtlas2
sg_make_nodes

Generate data
sg_custom_shapes

Custom shapes
sg_from_gexf

Graph from GEXF file
sg_drop_nodes_delay_p

Drop nodes or edges with a delay
sg_drop_node_p

Remove node or edge
sg_drop_nodes

Drop
sg_drop_nodes_p

Drop nodes or edges
sg_add_images

Add images to nodes
sg_button

Buttons
sigmajs-shiny

Shiny bindings for sigmajs
sigmajs

Initialise
sg_animate

Animate
sg_clear_p

Clear or kill the graph
sg_drag_nodes

Drag nodes