plot a network using rough.js
Details
the function recognizes the following attributes Vertex attributes (e.g. V(g)$shape):
shape one of "circle", "rectangle", "heart", "air", "earth", "fire", "water"
fill vertex fill color
color vertex stroke color
stroke stroke size
fillstyle one of "hachure", "solid", "zigzag", "cross-hatch", "dots", "sunburst", "dashed", "zigzag-line"
size vertex size
label vertex label
pos position of vertex label (c)enter, (n)orth, (e)ast, (s)outh, (w)est
Edge attributes (e.g. E(g)$color):
color edge color
width edge width
Default values are used if one of the attributes is not found.
The result of a roughnet call can be printed to file with save_roughnet()
More details on roughjs can be found on https://github.com/rough-stuff/rough/wiki
Examples
library(igraph)
#>
#> Attaching package: ‘igraph’
#> The following objects are masked from ‘package:stats’:
#>
#> decompose, spectrum
#> The following object is masked from ‘package:base’:
#>
#> union
g <- make_graph("Zachary")
V(g)$shape <- "circle"
V(g)$shape[c(1, 34)] <- "rectangle"
V(g)$fill <- c("#E41A1C", "#377EB8", "#4DAF4A", "#984EA3")[membership(cluster_louvain(g))]
V(g)$fillstyle <- c("hachure", "zigzag", "cross-hatch", "dots")[membership(cluster_louvain(g))]
V(g)$color <- "black"
V(g)$size <- 30
V(g)$stroke <- 2
E(g)$color <- "#AEAEAE"
roughnet(g, width = 960, height = 600)