Dotplot
dotplot is a visualization that allows one to tell a story about data. Our primary use case is mapping a diverse network of people in a playful and interactive way. All too often, the only way to get a sense for the attendees of an event or the members of a distributed network is to do a significant amount of searching for resumes and background information. This research takes excessive time and effort, and it makes what should be an exciting and fun--meeting new people and finding potential collaborators--into a chore, something to be avoided or put off.
This is where dotplot intervenes, bringing a sense of joy and discovery back into the process and helping to facilitate even more discoveries of commonalities and uniqueness among group members. This tool takes a spreadsheet of information about individuals gathered through survey questions and generates a dynamic visualization of the responses. Two examples using the current version of the tool can be found here and here, and the codebase can be viewed on GitHub.
Currently, this tool requires specific backend programming to input spreadsheet information, but we would like it to be a tool available for conference organizers and event hosts to use without difficulty or extensive programming experience. Other potential improvements include:
- Easy to use, interactive interface for data input and manipulation
- Offer users choices for how the data is visualized by survey and by question:
- Display locations on a map
- Track a specific respondent through multiple questions (in progress)
- See the relationship between multiple questions using color, space, etc.
- Zoom in and out on specific clusters
- Hover to reveal more information about respondents or clusters (in progress)
- And so on.
Requirements (can be closely or loosely defined)
There are several small and large enhancements we would like to make to this tool. Mostly, we are looking for a GSoC student who would be excited to help:
- Design and build a system for collecting structured data from users
- Connect the collected data to the existing JS visualization
- Expand and improve upon the existing JS visualization
- Bring creative and thoughtful ideas about potential enhancements
Consider both the typical user experience and creative uses of the tool
Technology involved (project can be, and is sometimes encouraged to be, open ended such that the student proposes and solution)
- Javascript
- D3.js
- HTML/CSS/SVG
- A server-side programming language of the student’s choice (Javascript, Ruby, PHP, Python)