Information visualization is the study of interactive visual representations of abstract data that exploits the capabilities of the human perceptual system. This abstract data could be numeric or nonnumeric, such as text, symbolic or geographic data.
The main challenge in this area is to enable humans to intuitively explore a given data set to gain new insights, via the design of a cognitively useful visual and spatial mapping, with accompanying interaction techniques.
Information visualization is multidisciplinary and merges from computer graphics, human-computer interaction, cognitive psychology, visual design, and data science. Information visualization has become increasingly relevant in the age of big data and analytics to understand large amounts of unstructured multivariate data obtained from multiple sensors in IoT devices in real-time.
This course covers a framework of how to break-down, validate and build visualizations for multifaceted use cases like presenting information or insights gathering from a practical industry perspective.
There is also a heavy practical component applied in the context of designing and building interactive visualizations for the web.
For this, we will go through technical code sessions in libraries like D3 (Data Driven Documents), the defacto web-based visualization library.
However, students are free to choose their own implementations as long as the results are published to the web.
Assignment Items | Percentage | Period |
---|---|---|
Assignments (Individual, 5 total) | 20% | Throughout term |
Team Project (Milestone 1) | 15% | Week 7 & 8 |
Team Project (Milestone 2) | 30% | Week 12 & 13 |
Quiz Assessment | 35% | Week 13 |
We will only be using open-source software in this course, and we will stick mainly within the HTML/CSS/JS stack.
Software like Tableau and PowerBI are geared more for exploratory analysis, but the main drawback is that they are neither free nor truly customisable at a low level. For open source data science languages like R (e.g. ggplot2) and Python (e.g. matplotlib), the interactivity is never going to be as good as a one built for the web.
Thus, we'll be using D3.js, the defacto data visualization library for the web. We'll also touch on web-based libraries /platforms for interactive spatial visualizations - Google Maps, Mapbox, Leaflet, Cesium, etc.
We'll also be using version control software Git, and students will need a GitHub account(free) to submit all their lab assignments.
Students should also have a code editor of their choice installed on their laptops - Visual Studio Code, Notepad++, Atom, Eclipse, etc.
There is web programming required for this course, and students should come equipped with some basic HTML/CSS/JS background.
We will be using Tamara Munzner's Data Visualization Analysis and Design as a guidepost to understand the interactive data visualization space.