DATA VISUALIZATION

Blerina Sinaimeri

Instructional goals

The course provides an overview of the principles and latest tools of data visualization. Students will learn how data analysis and visualization should work together to create a powerful way for communicating data-driven findings, motivate analyses, and detect flaws. The course will offer the possibility to apply these techniques to create solutions and have an impact in real-world problems.

Prerequisites

Basic knowledge of Python.

Intended learning outcomes

Knowledge and understanding: The course will provide the latest concepts, techniques and tools to develop a successful capability of illustrating the data accurately and effectively. Through the use of concrete examples students will learn how to extract, simplify and communicate meaningful information starting from raw data through the use of the latest visualization tools. They will learn how to choose the best form of visualization depending both on the data type and audience. Applying knowledge and understanding: At the end of the course the student is expected to • Understand the principles of effectively representing data (how to encode different data dimensions? With what perceptual effects? etc.) • Learn to constructively analyze and criticize a data visualization solution in light of purpose and audience. • Learn how to use the latest tools and software to design data visualization solutions. • Understand the basic principles of interactive interaction and develop the skills to implement interactive visualizations for the web. Making judgements: Students will be able to think strategically on how to effectively visualize their data in order to simplify information while highlighting important ideas. Furthermore, they will develop the skills to recognize how different types of data visualization can distract, confuse or mislead, as well as suggest alternatives how the same data can be better presented. Communications Skills: Throughout the course the students will learn storytelling through visualization. In particular how to make the right data visualization choices to communicate their ideas clearly and effectively to diverse audiences. The course will stimulate communication through class discussions, oral presentations and group works. Learning skills: The course will empower students with techniques and tools that provide an accessible way to understand trends, outliers, and patterns in data. Learning how to leverage a software tool in order to effectively represent the data will also enable the students to extract better information and make more effective decisions.

Course Contents

- Data visualization with Python: matplotlib, seaborn, plotly, and notebook-based visual analysis. - Visual encoding and grammar of graphics: marks, scales, layers, facets, color, labels, and interaction. - Data Humanism and ethics of visualization: missing data, categories, aggregation, uncertainty, inequality, persuasion, and misleading visualizations. - Visualization of complex data: multivariate data, time series, geospatial data, dimensionality reduction, and networks. - Dashboard design with Tableau and Power BI: data connections, filters, KPIs, calculated fields/measures, interaction, and reporting. - Web-based data visualization: HTML, CSS, JavaScript, data loading, interactive charts, tooltips, filters, and simple linked views. - Data storytelling and project work: from analytical question to visual output, interpretation, and responsible communication.

Reference Books

Lecture notes, research papers and course material will be made available on the e-learning platform.

Teaching Methods

The course consists of lectures complemented by practical lab sessions and group project works. The lectures may be enriched by interesting testimonials speeches.

Assessment Method

The final grade for this course is based on a combination of continuous assessment (one-third) and a final written exam with oral discussion of the individual project (two-thirds). This structure applies only to the official exam dates at the end of the current semester. In all later sessions (retake sessions), the evaluation will be based solely on a final exam composed by written test and oral discussion of the individual project, which will count for 100% of the final grade. Participation in continuous assessment is mandatory for attending students, and the grades earned cannot be refused. Students exempt from compulsory attendance, or who do not meet attendance requirements, will be evaluated through the full final exam, which includes a project, a written test and an oral discussion. In the project students are required to demonstrate that they are able to: • leverage software tools to design data visualization solutions; • develop interactive visualizations for the web; • analyze and assess critically strengths and weaknesses of different types of data visualization; • make appropriate data visualization choices in order to communicate their ideas clearly and effectively to diverse audiences. The overall assessment will take into account the level of knowledge and understanding of data visualization techniques acquired by the students; their capacity for thinking creatively and critically; their capacity to design and evaluate data visualization solutions, making critical judgements about these; and their capacity to deploy data visualization in order to present effectively findings and conclusions.

Thesis assignment criteria

To be discussed with the instructor.

Week 1

- Perception, visual encoding, attention, Gestalt principles, and the limits of human visual reasoning. - Python visualization workflow: notebooks, datasets, matplotlib, seaborn, plotly. - Basic visual encodings in practice: position, color, size, labels, scales.

Week 2

- Data Humanism: how data are collected, selected, categorized, and made incomplete. - Visualizing missing values, imbalance, outliers, and data quality problems in Python. - Grammar of graphics: marks, encodings, scales, facets, and layers.

Week 3

- Data Humanism: aggregation, averages, categories, and what they hide. - Comparisons, rankings, baselines, normalization, and small multiples. - Ranked charts, before/after plots, and normalized comparisons in Python.

Week 4

- Data Feminism - Error bars, ranges, distributions, intervals, and uncertainty bands. - Trends, before/after comparisons, slope charts, and time series.

Week 5

- Data Humanism: - Maps, choropleths, proportional symbols, spatial aggregation, and normalization. - Geospatial visualization in Python with geopandas, folium, or plotly.

Week 6

- Data Humanism: visualizing inequality, vulnerability, and social context. - Multivariate visualization: heatmaps, facets, pair plots, parallel coordinates. - Dimensionality reduction for visualization: PCA, t-SNE, UMAP, and projection risks.

Week 7

- Tableau: data connections, dimensions, measures, calculated fields, and filters. - Tableau: charts, maps, parameters, actions, and interactive views. - Tableau dashboard on a real dataset.

Week 8

- Power BI: data import, Power Query, data model, relationships, and measures. - Power BI: visuals, slicers, filters, drill-down, and report pages. - Power BI dashboard on a real dataset.

Week 9

- Dashboard design: KPIs, layout, hierarchy, navigation, and user tasks. - Comparing Tableau and Power BI on the same dataset. - Improving dashboards for clarity, interaction, and decision support.

Week 10

- Web design for data visualization: HTML, CSS, layout, typography, and responsive pages. - JavaScript basics for data visualization: variables, arrays, objects, functions, events. - Loading and displaying data in a web page.

Week 11

- JavaScript visualization: SVG/canvas logic, scales, axes, marks, and legends. - Interactive charts with Chart.js, Observable Plot, or D3.js. - Tooltips, filters, highlighting, and selection.

Week 12

- Building a small web-based data visualization project. - Integrating Python analysis with a JavaScript visualization or BI dashboard. - Final review of data, visual choices, interaction, ethics, and interpretation.