Graphs can be a powerful way to represent relationships between data, but they are also a very abstract concept, which means that they run the danger of meaning something only to the creator of the graph. Often, simply showing the structure of the data says very little about what it actually means, even though it’s a perfectly accurate means of representing the data. Everything looks like a graph, but almost nothing should ever be drawn as one. Ben Fry in ‘Visualizing Data’
Flickr Tag Error: Call to display photo '5446711248' failed.
Error state follows:
- stat: fail
- code: 95
- message: SSL is required
I got that quote from Dan Brickley’s post Linked Literature, Linked TV – Everything Looks like a Graph
and like Dan I think Ben Fry has it spot on. When I started following Tony’s work on network analysis (here’s a starting point of posts
), my immediate response was ‘Where’s Wally?’, where was I in relationship to my peers, who was I connected to, or even who wasn’t I connected to.
As I start my exploration of tools like NodeXL it's very clear that being able to filter, probe and wander through the data provides far more insights to what’s going on. This is why when I, and I’m sure Tony as well, show our tangled webs it’s designed as a teaser to inspire you to follow our recipes and get stuck into the data yourself. This isn’t however always practical.
A recent example of this was when I was looking through the Guardian’s Using social media to enhance student experience seminar #studentexp. I’d captured the #studentexp tagged tweets using my TAGS spreadsheet, used my recipe get sentiment analysis from ViralHeat and imported the data into NodeXL to start exploring some of the tweets and conversations from the day.
But what does this graph actually mean? I could start highlighting parts of the story, but that would be my interpretation of the data. I could give you the NodeXL file to download and look at, but you might not have this software installed or be proficient at using it. I could try looking at the raw data in the Google Spreadsheet, but it lacks ‘scanability’. So I’ve come up with a halfway house. A re-useable interface to the TAGS spreadsheet which starts presenting some of the visual story, with interactivity to let you drilldown into the data. I give you:
*** TAGSExplorer ***
What is TAGSExplorer?
What is displayed:
- A node for each Twitterer who used the #studentexp hashtag and is stored in the spreadsheet archive.
- Solid lines between nodes are conversations eg @ernestopriego tweeted “@easegill I agree completely. Learning how to use social media tools is part of digital literacy and fluency; part of education. #studentexp” creating a connection between @ernestopriego and @easegill.
- Dotted lines are not direct replies but mentions eg @theREALwikiman tweeted “If you're an academic librarian it might be worth following @GdnHigherEd's #studentexp tag right now, if you have time. Interesting stuff.” For performance by default these are turned off but enabled by following the instructions below.
- Node text size based on he number of @replies and @mentions
How to make your own?
- If you haven’t already you need to capture some tweets into a TAGS spreadsheet
- When you have some data from the spreadsheet File > Publish to the web …
- Head over to TAGSExplorer and enter you spreadsheet key (or just paste the entire spreadsheet url HT to Tony Hirst for this code)
- Click ‘get sheet names’ and select the sheet of the data you want to use (if you are doing a continuous collection the default is archive)
- Click ‘go’
- If you want to share with others, click the ‘link for this’ at the top right which gives you a permanent url – the permanent link also hides the spreadsheet selection interface. By default mention lines are off but can be enabled by adding &mentions=true to the link (see example above)
If you don’t have your own data yet here’s some examples from data I’ve already collected:
I’ve got some ideas, I’m interested in integrating the sentiment scores from ViralHeat, but more importantly where do you think I should go next with this?