Skip to main content
Skip header

Data Visualization

* Exchange students do not have to consider this information when selecting suitable courses for an exchange stay.

Course Unit Code460-4120/01
Number of ECTS Credits Allocated4 ECTS credits
Type of Course Unit *Choice-compulsory type A
Level of Course Unit *Second Cycle
Year of Study *Second Year
Semester when the Course Unit is deliveredWinter Semester
Mode of DeliveryFace-to-face
Language of InstructionCzech
Prerequisites and Co-Requisites Course succeeds to compulsory courses of previous semester
Name of Lecturer(s)Personal IDName
FAB038Ing. Tomáš Fabián, Ph.D.
Summary
The aim of the course is to acquaint students with the problems of visualization and interpretation of various types of scientific, technical and abstract data. The basic principles and procedures of displaying interdisciplinary data are described and the acquired knowledge is used in the implementation of practical tasks in the field of visualization. Emphasis is placed on the adequacy of the chosen visualization tools and on the practical use of the acquired knowledge in the implementation of their own graphic outputs providing the most complete and undistorted picture of the processed data. Theoretical knowledge gained during the analysis of partial tasks serves as a basis for the practical implementation of specific examples in exercises. The exercises therefore correspond closely with the lectures and the practical implementation of the mentioned topics is assumed, especially in the C++, Python, and JavaScript languages.
Learning Outcomes of the Course Unit
The aim of the course is to expand students' knowledge of the visualization of a wide range of multidisciplinary data. After completing the course, students will have basic theoretical and practical knowledge in the field of visualization of non-trivial scientific, technical and abstract data. They will be able to create graphic outputs from the processed data for the purposes of their further analysis, creation of professional publications and presentations for the general public.

After completing the course, students will be able to:

- enumerate and characterize methods and means for visualization of scientific, technical and abstract data,
- find the optimal form of visual presentation for a specific type of data,
- define the necessary software tools for the implementation of the proposed visualization,
- implement interactive visualizations, for example in a web browser environment,
- graphically analyze multidimensional data and perform their projections into spaces with a lower dimension,
- design a color ramp according to the nature of the data and with regard to their correct interpretation.
Course Contents
Lectures:

1. Visualization history vs. modern tools and libraries, basic methods of data representation (presentation and exploratory forms of graphics), characteristics of datasets (continuous, sampled and discrete data, topological and geometric dimensions of data, dimensions of attributes).
2. Methods of reconstruction of sampled data, cell types, regular grid, scattered data (point clouds), possibilities of their interpolation, approximation and extrapolation.
3. Mapping data to a color scale, design of effective color and grayscale transitions, their interpretation, an overview of proven and safe color scales.
4. Types of graphs and their significance for visualization of quantity, density, distribution, relations, correlation, structures, time and other statistical quantities; aesthetics and layout of the graph, the so-called lie factor, data-ink ratio, the trifecta framework, the chartjunk concept and other cognitive aspects of graphs.
5. Visualization of scalar quantities in the plane and space, capturing the properties of attributes and their relationships; bar, line, pie, area, point, polar and radar graphs, micrographs, temperature maps, elevation maps and isolines.
6. Visualization of static and dynamic vector fields, calculation of integral curves, their convolution, flowfield characteristics (streamlines, streaklines, pathlines, and timelines).
7. Tensor data, their meaning, possibilities of interpretation and visualization (fiber tracking, hyperstreamlines).
8. Visualization of volumetric data, methods for direct and indirect rendering, transfer functions, classification.
9. Visualization of structured data and graphs, graph layout algorithms, interactivity (e.g. details on demand).
10. Methods of multidimensional data visualization, dimension reduction (selection, extraction, principal component analysis, projection, multidimensional scaling), parallel coordinate plots, hierarchical (dendrograms) and non-hierarchical approaches (k-means, etc.) of cluster analysis.
11. Illustrative visualization, web presentations, possibilities of tabular data formatting, aspects of selection of a specific visualization tool.
12. Tools from the field of image processing and their use in visualization (point operations, histograms, segmentation, classification, mathematical morphology).
13. Visualization using virtual and augmented reality tools, graphics engines and APIs.
14. Technical aspects of the final presentation and publication of visualization outputs, arrangement and layout of individual parts, interchangeable formats.


Practical exercise on computer labs:

1. Analysis of the structure and properties of sample datasets, determination of dimensions and data processing using scripts (e.g. visualization of temperature time series in gnuplot and matplotlib using Python language).
2. Examples of approximation of sampled data affected by measurement error by selected approximation function, interpolation of scalar values ​​over different types of grid cells.
3. Mapping data to a color ramp, design of effective color and grayscale gradients, their interpretation, an overview of proven and safe color ramps.
4. Work with different types of graphs from the lecture, adjustment of their layout and evaluation of their contribution from the perspective of interpretation of the content of displayed data.
5. Practical examples for visualization of various properties of one or more attributes.
6. Visualization of vector fields applied to outputs from fluid flow simulations, calculation of integral curves and plotting of stream lines.
7. Examples of tensor data and possibilities of their visualization (e.g. surface curvature, process of diffusion of particles of one substance into another).
8. Visualization of medical data (CT and MRI images) by direct methods (DVR) and visualization of fluid dynamics simulation using indirect methods (Marching Cubes).
9. Practical implementation of an algorithm for graph distribution and its modification according to the needs of visualization, use of the tool such as d3.js to achieve interactivity of tree structures and general graphs.
10. Processing of multidimensional datasets, dimension reduction, projection, visualization (e.g. FastMap, PCA, PCP).
11. Tools for creating interactive graphs in the web environment (e.g. d3.js, Vega-Lite, Tableau, Plotly, Google Charts, RAWGraphs).
12. Processing image data (e.g. medical images) by means of digital image processing and analysis for the purposes of their pre-processing and final editing (e.g. noise reduction, highlighting of key parts, classification).
13. Use of standard graphics APIs (e.g. OpenGL) for rendering 3D visualizations (e.g. terrain map) in VR/AR environment.
14. Demonstration of results achieved during implementation of assigned tasks.


The exercises solve specific tasks from the discussed area. The implementation languages ​​are C ++, Python and JavaScript.
Recommended or Required Reading
Required Reading:
[1] Telea, Alexandru C. Data visualization: principles and practice. Second edition. 617 s., A K Peters/CRC Press, ISBN 978-146-6585-263, 2014.
[2] Wilke, Claus O. Fundamentals of data visualization: a primer on making informative and compelling figures. O'Reilly Media, 2019.
[1] Telea, Alexandru C. Data visualization: principles and practice. Second edition. 617 s., A K Peters/CRC Press, ISBN 978-146-6585-263, 2014.
[2] Wilke, Claus O. Fundamentals of data visualization: a primer on making informative and compelling figures. O'Reilly Media, 2019.
Recommended Reading:
[1] Chun-houh Chen, Wolfgang Härdle, Antony Unwin, Handbook of Data Visualization, ISBN: 978-3-540-33036-3, 936 pages, Springer, 2008.
[2] Ware, Colin. Information Visualization: Perception for Design (Interactive Technologies), Fourth edition, 560 pages, Morgan Kaufmann, ISBN 978-0128128756, 2020.
[3] Charles D. Hansen and Chris Johnson. The visualization handbook. 2004, 962 pages. ISBN 978-012-3875-822.
[4] Tamara Munzner, Visualization Analysis and Design, ISBN: 978-1466508910, 428 pages, AK Peters, 2014.
[5] Casey Reas and Ben Fry, Processing: A Programming Handbook for Visual Designers and Artists, ISBN: 978-0262182621, 712 pages, MIT Press, 2007.
[6] Stephen Few, Show Me the Numbers: Designing Tables and Graphs to Enlighten, Second Edition, ISBN: 978-0970601971, 371 pages, Analytics Press, 2012.
[1] Chun-houh Chen, Wolfgang Härdle, Antony Unwin, Handbook of Data Visualization, ISBN: 978-3-540-33036-3, 936 s., Springer, 2008.
[2] Ware, Colin. Information Visualization: Perception for Design (Interactive Technologies), Fourth edition, 560 s., Morgan Kaufmann, ISBN 978-0128128756, 2020.
[3] Charles D. Hansen and Chris Johnson. The visualization handbook. 2004, 962 s.. ISBN 978-012-3875-822.
[4] Tamara Munzner, Visualization Analysis and Design, ISBN: 978-1466508910, 428 s., AK Peters, 2014.
[5] Casey Reas and Ben Fry, Processing: A Programming Handbook for Visual Designers and Artists, ISBN: 978-0262182621, 712 s., MIT Press, 2007.
[6] Stephen Few, Show Me the Numbers: Designing Tables and Graphs to Enlighten, Second Edition, ISBN: 978-0970601971, 371 s., Analytics Press, 2012.

Planned learning activities and teaching methods
Lectures, Tutorials
Assesment methods and criteria
Task TitleTask TypeMaximum Number of Points
(Act. for Subtasks)
Minimum Number of Points for Task Passing
Credit and ExaminationCredit and Examination100 (100)51
        CreditCredit45 20
        ExaminationExamination55 6