tweets %>%
gt_edges(screen_name, mentions_screen_name) %>%
gt_graph() -> g
# This is some code I stole which finds the largest connected subgraph (I think)
components <- igraph::clusters(g, mode="weak") # I am not sure why it uses clusters.
biggest_cluster_id <- which.max(components$csize)
# ids
vert_ids <- V(g)[components$membership == biggest_cluster_id]
# subgraph
g2 <- igraph::induced_subgraph(g, vert_ids)
# Simplify - I added this to
g2 <- simplify(g2)
# Find the degree of vertices - this will be used to size later
in_dg <- igraph::degree(g2, mode = "in") # Calculate the
V(g2)$in_degree <- in_dg
sz = 1 + 0.09 * V(g2)$in_degree
V(g2)$sz <- sz
V(g2)$label <- V(g2)$name
l <- layout_with_fr(g2)
par(mar=c(0,0,0,0))
plot(g2, vertex.color = ifelse(V(g2)$sz > 3, "dark red", "sky blue") , vertex.frame.color = "dark blue", vertex.label = ifelse(V(g2)$sz > 3, V(g2)$label, NA), vertex.size = sz, edge.arrow.size = 0.7, layout = l, )

tiff("g2.tiff", units="in", width=20, height=20, res=100)
par(mar=c(0,0,0,0))
plot(g2, vertex.color = ifelse(V(g2)$sz > 3, "dark red", "sky blue") , vertex.frame.color = "dark blue", vertex.label = ifelse(V(g2)$sz > 3, V(g2)$label, NA), vertex.size = sz, edge.arrow.size = 0.7, layout = l, )
dev.off()
## png
## 2