Data Visualization

You are here

Credits
3
Types
Elective
Requirements
This subject has not requirements, but it has got previous capacities
Department
CS
The aim of the course is to introduce the basic principles of data visualization, both from a more theoretical point of view and from a practical point of view. Upon completion of the course, the student should be able to perform data cleaning, visual design, and implementation using the best-known data visualization techniques.

Teachers

Person in charge

  • Pere Pau Vázquez Alcocer ( )

Weekly hours

Theory
1.5
Problems
0.5
Laboratory
2
Guided learning
0.15
Autonomous learning
20

Objectives

  1. Introduction to Visualization
    Related competences: CDG3, CTE12, CB7, CB9,
    Subcompetences:
    • Definition
    • History of visualization
    • History of visualization
    • Definition
    • Basic concepts
    • Basic concepts
  2. Perception
    Related competences: CTE9, CTE11, CTE12, CTR4, CTR6, CB7, CB8, CG9,
    Subcompetences:
    • The visual system
    • Preattentive variables
    • Ranking of visual channels
    • The visual system
    • Preattentive variables
    • Ranking of visual channels
  3. Basic and advanced data visualization techniques
    Related competences: CTE11, CTE12, CTR4, CTR6, CB7, CB8, CB9, CG9,
    Subcompetences:
    • Bar charts, line charts, pie charts
    • Multiple variables visualization
    • Specific encodings (spatial data, time data...)
    • Bar charts, line charts, pie charts
    • Multiple variables visualization
    • Specific encodings (spatial data, time data...)
  4. Multiple Views, Interaction, and Data Reduction
    Related competences: CDG3, CTE9, CTE11, CTE12, CTR4, CTR6, CB7, CB8, CB9, CG9,
    Subcompetences:
    • Motivation
    • Multiple views layouts
    • The visualization mantra
    • Motivation
    • Multiple views layouts
    • The visualization mantra
  5. Implementation of data visualization systems
    Related competences: CDG3, CTE9, CTE11, CTE12, CTR4, CTR6, CB7, CB8, CB9, CG9,
    Subcompetences:
    • Implementation of Visualization Systems
    • Data cleaning
    • Design of visualization systems
    • Data cleaning
    • Design of visualization systems
    • Implementation of Visualization Systems

Contents

  1. Visualization 101
    This section will introduce the most important visualization concepts, some bad practices will be described. The history of the display will also be discussed.
  2. Data visualization idioms
    This topic will show the most basic data visualization techniques and also present some more advanced techniques for visualizing complex data, such as multi-variable visualization or geospatial visualization.
  3. Perception
    The basic operation of the visual perception system will be explained. Some important concepts such as attentional variables, the importance of color, and the most important principles of perception will also be described. It will also describe which visual variables are perceived more carefully than others.
  4. Multiple view design
    To represent highly complex information, it is very common to need multiple variables and views. This section will cover how to design complex systems using multiple views: how to organize views, separate data, and how to create linked interactions.
  5. Implementation of data visualization applications
    There are many tools and technologies developed that allow the programming of data visualization systems. There are tools that do not require any programming such as Tableau, Vega, Lyra or that provide more control over the result using programming languages and libraries such as Altair for Python, Matplotlib for R, or D3 for JavaScript. The aim of this topic is for students to be able to assess the needs of a project in order to be able to choose the right tool. In addition, it will also be essential for students to learn how to make interactive data visualization applications using a modern library, such as Altair or Vega.

Activities

Activity Evaluation act


Introduction to visualization and data visualization systems

Topic development: Introduction to visualization
  • Theory: Display definition. Importance and impact. Introduction to display systems.
  • Problems: Examples of good and bad practices.
Objectives: 1
Contents:
Theory
1.5h
Problems
0.5h
Laboratory
0h
Guided learning
0h
Autonomous learning
2h

Perception

Topic development: perception and color. Ranking of visual variables. Concepts of perception: preattentive variables. Principles of perception. Marks and channels. Use of color and color palettes.
  • Theory: Perception and color. Ranking of visual variables. Concepts of perception: attentive variables. Principles of perception. Brands and channels. Use of color and color palettes.
  • Problems: Perception and color. Ranking of visual variables. Concepts of perception: attentive variables. Principles of perception. Brands and channels. Use of color and color palettes.
Objectives: 2 1
Contents:
Theory
3h
Problems
1h
Laboratory
0h
Guided learning
0h
Autonomous learning
2h

Visualization techniques

Topic development: Visual representations of data. Basic visualization techniques. Advanced visualization techniques.
  • Laboratory: Design of effective visualizations. Data cleaning. Implementation of basic data visualizations.
  • Guided learning: Practical exercises for visualizing simple data sets.
  • Autonomous learning: Data cleaning exercises. Practical exercises for visualizing simple data sets.
Objectives: 3 4
Contents:
Theory
1.5h
Problems
0.5h
Laboratory
4h
Guided learning
7h
Autonomous learning
6h

Multiple view design

Development of the topic: Design of multiple views. Organization of multiple views. Coordinated views. Interaction. Exploratory data analysis.
  • Theory: Multiple view design. Organization of multiple views. Coordinated views. Interaction. Exploratory data analysis.
  • Problems: Multiple view design. Organization of multiple views. Coordinated views. Interaction. Exploratory data analysis.
  • Laboratory: Implementation of coordinated multiple view systems. Implementation of cross-interaction.
  • Guided learning: Implementation of coordinated multiple view systems. Implementation of cross-interaction.
  • Autonomous learning: Implementation of coordinated multiple view systems. Implementation of cross-interaction.

Theory
3h
Problems
1h
Laboratory
2h
Guided learning
9h
Autonomous learning
10h

Implementation of data visualization applications.

Learning a data visualization tool or library. Data visualization project.
  • Laboratory: Learning a data visualization tool or library. Data visualization project.
  • Guided learning: Learning a data visualization tool or library. Data visualization project development.
  • Autonomous learning: Learning a data visualization tool or library. Data visualization project development.
Objectives: 2 1 3 4 5
Contents:
Theory
0h
Problems
0h
Laboratory
6h
Guided learning
9h
Autonomous learning
6h

Lab1 delivery

Delivery of the first part of the project: Static visualization
Objectives: 2 1 3 4 5
Week: 4
Type: assigment
Theory
0h
Problems
0h
Laboratory
0h
Guided learning
0h
Autonomous learning
10h

Lab2 delivery

Delivery of the second part of the project: Lab2
Objectives: 2 3 4 5
Week: 7
Type: assigment
Theory
0h
Problems
0h
Laboratory
0h
Guided learning
0h
Autonomous learning
10h

Final exam

There will be a final test to demonstrate the knowledge acquired in the subject.
Objectives: 2 1 3 4 5
Week: 8
Type: final exam
Theory
0h
Problems
0h
Laboratory
0h
Guided learning
0h
Autonomous learning
4h

Teaching methodology

The course will be taught in a very practical way. Some theoretical concepts will be discussed each day, and the rest of the session will be devoted to working on the concepts in the laboratory. It will start with solving simple visualization exercises and then move on to developing a two-stage project. In a first stage, a static multi-view view will be performed and in a second stage, interaction will be added.

Evaluation methodology

The subject will be evaluated with a project that will have two deliveries and a final exam. The first installment will be a static display (Lab1) and the second will be an interactive display (Lab2). The final grade will be: NF = Lab1 * 0.3 + Lab2 * 0.4 + 0.3* FinalExam

Bibliography

Basic:

Previous capacities

Students should have a basic knowledge of statistics and eventually computer graphics. They should also be able to program in some general programming language, preferably Python.