View on GitHub

CS5346 Information Visualisation

NUS, School of Computing CS5346 S2AY2017-18

About the course

Information visualisation allows one to visualize large amount of data visually and interactively, enabling grasping of difficult concepts, gaining insights into analytics done, or discover patterns that would otherwise be difficult to surface through machine analytics alone. In the era of big data, information visualisation plays an increasing important roles in problem solving in the workplace People who visualize data is growing extremely quickly as we deal with more and more information. Even more important, the audience has moved far beyond those who are experts in visualization. By making these ideas accessible to a wide range of people, we should see some truly amazing things in the next decade.

Through this course, We expect to meet students who want to ask questions, play with data, and gain an understanding of how to communicate information to others. For instance, web designers who want to build more complex visualizations than their tools will allow. It’s also for software engineers who want to become adept at writing software that represents data—that calls on them to try out new skills, even if they have some background in building UIs. None of this is rocket science :) but it isn’t always obvious how to get started. Fundamentally, this course is for students who have a data set, a curiosity to explore it, and an idea of what they want to communicate about it.

This course intended to show how to make use of data as a resource that you might otherwise never tap. It covers the basic visualization principles, how to choose the right kind of display for your purposes, and how to provide interactive features that will bring users to your site over and over again.

Learning objectives

Sample assignments and solutions

This section provides a sample set of previous assignments and solutions submitted by the students. The purpose of the material is to give you a rough idea of the past assignments and the expected level of programming skills required to generate the requested figures. The solutions provided are not guaranteed to be optimal and we are not expecting to see them copied as such (copy-pasted) for any of the future assignments. However, you are encouraged to use the same approaches and ideas if you see them fit for your own implementations – just write the code yourself.

Assignment examples

Python

You can find a sample assignment for Python above. There are four questions labelled as Q1..Q4 and several code snippets.

JavaScript/D3

Dataset (licensed under CC BY-NC-SA 4.0). You can find the original dataset from here.

Tableau

Tableau example visualization

A few more examples

Final project video presentations

Video Presentations

Projects