20802126 - VISUALIZZAZIONE DELLE INFORMAZIONI

La quantità di dati relazionali disponibili in forma elettronica rende la loro esplorazione interattiva attraverso interfacce visuali un interessante dominio di ricerca ed una promettente area per lo sviluppo di prodotti software. Nuovi strumenti di esplorazione visuale trovano quotidianamente applicazione nelle reti sociali, nelle basi di dati, nelle reti di calcolatori, nel web semantico, nella sicurezza, ecc. Recentemente, la diffusione di tablet e smartphone hanno esasperato la necessità di interfacce visuali innovative che siano contemporaneamente efficaci ed intuitive. Gli obiettivi del corso sono proprio quelli di introdurre lo studente ai problemi e alle soluzioni relative all'esplorazione visuale di dati astratti, con particolare enfasi sulle metafore grafiche adottate e sui metodi e modelli algoritmici utilizzati. Verranno approfondite le conoscenze degli studenti su problemi di ingegneria degli algoritmi e di ottimizzazione su reti. Tali conoscenze verranno applicate a problemi di visualizzazione dell'informazione di varia natura e con forte connotazione pratica.
scheda docente | materiale didattico

Programma

Data and Visualization: Data overloading. Comparison of Scientific Visualization and Information Visualization. Structured and Unstructured data. Data transformation. Data tables.

Visual Perception: Our vision’s principles and limitations. Peripheral and central view. The perception of color.

Cognitive Issues and User Tasks: Perception abilities. Weber's law. Stevens' power law. Gestalt laws. A two stage model for visual perception. Task taxonomies.

Infovis on the Web - SVG and D3.js: Basic ingredients of Web data visualization. JavaScript crash course. Raster and vector graphics. Overview of JavaScript libraries. Focus on D3.js.

Multivariate Data Representations: Combined views. Icons or glyphs. Alternative coordinate systems.

Visualization in Computer Networks: Visual analysis in the computer network domain. Motivations. Taxonomies. Real-world examples and use cases. Open questions.

Design Methods and Evaluation: Design methodologies and design choices. Design evaluation (goals, difficulties, practices, guidelines).

Visualization of Time Series Data: Definition of time series and temporal data. Visualization of time series (single dependent variable, multiple dependent variables). Case studies.

Interaction: Classification of interaction mechanisms, goals, and timings. Examples of interaction strategies.

Introduction to Graph Drawing: Graph Drawing conventions and aesthetics. The divide an conquer approach for testing planarity of a graph.

Node-link Representations of Trees: Representing trees within the node-link paradigm. Layered drawings of trees. Hv-drawings of trees. Limitations of node-link representations.

Space-Filling Visualizations of Trees: Algorithms and systems for the representation of trees using the space-filling strategy. Treemaps. 3D Space-filling approaches.

Representations of Graphs and Networks with the Force-Directed Approach: The force-directed paradigm. The barycenter method. Spring embedders. Scalability and flexibility of the force-directed paradigm. Fruchterman-Reingold and Barnes–Hut algorithms. Simulating graph theoretic distances. Magnetic fields. Generic energy functions. Handling drawing constraints.

Representations of Hierarchical Data: Algorithms for the representation of layered networks. The Sugiyama approach. Step 1: Cycle removal. Step 2: Level Assignment. Step 3: Crossing Reduction. Step 4: X-Coordinate Assignment

Orthogonal Drawings: Computing orthogonal drawings via Network Flows. The Topology-Shape-Metric approach. Extension to graphs of arbitrary degree. Representations of orthogonal drawings obtained from visibility representations and by incremental approaches.

Visualizing Large Graphs: Strategies for the visualization of massive amount of data providing both overview and details. Alternate between views. Combine different views. Filtering and clustering principles. Three-dimensional and two-dimensional representations of clustered graphs. Hybrid representations.

Tools and Libraries for Drawing Graphs: Tools and Libraries for drawing graphs. Programming languages, input and output formats, and interaction. Some practical example.

Architectures for Scalable Information Visualization: Computational and memory scalabity. Visualization architectures. Strategies for visualizing massive amounts of data.


Testi Adottati

Trasparenze fornite dal docente e scaricabili via via dal sito del corso: http://www.dia.uniroma3.it/~infovis/
Per scaricare le slides sono neccessarie delle credenziali da richiedere al docente (maurizio.patrignani@uniroma3.it)

Modalità Erogazione

Lezioni frontali in classe con proiezione ed illustrazione delle slides del corso.

Modalità Frequenza

Le trasparenze del corso sono abbondantemente commentate allo scopo di rendere possibile la preparazione all'esame anche agli studenti non frequentanti.

Modalità Valutazione

Un breve compito scritto (20% della valutazione). Due progetti: il primo, più piccolo, a metà corso sulla tecnologia D3.js (10% della valutazione); il secondo è un progetto di gruppo a fine corso (70% della valutazione). Attenzione: nei periodi di emergenza COVID-19 l’esame di profitto sarà svolto secondo quanto previsto all’art.1 del Decreto Rettorale n°. 703 del 5 maggio 2020. La prova orale sarà determinante per l’attribuzione della valutazione finale.