(This article was first published on Cornelius Puschmann's Blog » R, and kindly contributed to R-bloggers)
Those of you following my occasional updates here know that I have previously posted code for graphing Twitter friend/follower networks using R (post #1. post #2). Kai Heinrich was kind enough to send me some updated code for doing so using a newer version of the extremely useful twitteR package. His very crisp, yet thoroughly documented script is pasted below.
?Download graph_friendsfollowers.R
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 | # Script for graphing Twitter friends/followers # by Kai Heinrich ([email protected]) # load the required packages library("twitteR") library("igraph") # HINT: In order for the tkplot() function to work on mac you need to install # the TCL/TK build for X11 # (get it here: http://cran.us.r-project.org/bin/macosx/tools/) # # Get User Information with twitteR function getUSer(), # instead of using ur name you can do this with any other username as well start<-getUser("YOUR_USERNAME") # Get Friends and Follower names with first fetching IDs (getFollowerIDs(),getFriendIDs()) and then looking up the names (lookupUsers()) friends.object<-lookupUsers(start$getFriendIDs()) follower.object<-lookupUsers(start$getFollowerIDs()) # Retrieve the names of your friends and followers from the friend # and follower objects. You can limit the number of friends and followers by adjusting the # size of the selected data with [1:n], where n is the number of followers/friends # that you want to visualize. If you do not put in the expression the maximum number of # friends and/or followers will be visualized. n<-20 friends <- sapply(friends.object[1:n],name) followers <- sapply(followers.object[1:n],name) # Create a data frame that relates friends and followers to you for expression in the graph relations <- merge(data.frame(User='YOUR_NAME', Follower=friends), data.frame(User=followers, Follower='YOUR_NAME'), all=T) # Create graph from relations. g <- graph.data.frame(relations, directed = T) # Assign labels to the graph (=people's names) V(g)$label <- V(g)$name # Plot the graph using plot() or tkplot(). Remember the HINT at the # beginning if you are using MAC OS/X tkplot(g) |
To leave a comment for the author, please follow the link and comment on his blog: Cornelius Puschmann's Blog » R.
R-bloggers.com offers daily e-mail updates about R news and tutorials on topics such as: visualization (ggplot2, Boxplots, maps, animation), programming (RStudio, Sweave, LaTeX, SQL, Eclipse, git, hadoop, Web Scraping) statistics (regression, PCA, time series,ecdf, trading) and more...

Zero Inflated Models and Generalized Linear Mixed Models with R.
Zuur, Saveliev, Ieno (2012).