Using the java script library rough.js to draw
sketchy, hand-drawn-like networks.
(Checkout ggrough for turning
general ggplot objects into sketchy drawings)
You can install the developers version of roughnet with:
# install.packages("remotes")
remotes::install_github("schochastics/roughnet")
library(roughnet)
library(igraph)
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)
You can save the plot with the function save_roughnet()
(needs
{{pagedown}} to be installed.)
# install.packages("pagedown")
p <- roughnet(g,width = 960,height = 600)
save_roughnet(p,"karate.png")