Visualization Design

Autumn 2025

Chart as Design

  • Visualization design: más que solo una tipología de visualizations

Espacio de visualizations

Diseñando con Data y Graphics

  • Tomaremos un enfoque más granular para crear visualizations
  • Cada elemento de dato se codifica mediante un graphical mark
  • Cómo dibujamos el mark depende de los attributes, o campos, del elemento de dato.
  • Un enfoque estructurado para la creación de graphics nos ayuda a entender el espacio de diseño

Enfoque Declarativo para el Diseño

  • Elige un mark marks
  • Para cada attribute: • Determina el type del attribute • Elige un visual channel channels • Elige un mapping: del data domain al visual range • … ¡dibújalo! • (hay algunas variaciones de este enfoque)

Graphical Marks, Visual Channels

Data: Attributes

  • Partiendo de los data, ¿cómo llegamos a los graphics?
  • Primero, necesitamos determinar el attribute de un elemento de dato.

Scales

  • Luego: elegimos un mapping del data domain al visual range. Una scale.
  • Distinguimos scales según los attributes de los data. El data domain o el visual range pueden ser categorical, ordinal, o quantitative.

Quantitative: Quantitative Linear Scale

  • El domain y el range son ambos quantitative. Primero consideramos una scale linear.
  • Preliminares matemáticos:
    • Asumamos que el data domain tiene un valor mínimo y máximo \[ d_{min} \rightarrow d_{max}\]

    • Asumamos que el data range tiene un valor mínimo y máximo \[ r_{min} \rightarrow r_{max}\]

Quantitative: Quantitative Linear Scale

  • Buscamos una función linear tal que: \[ f(d_{min}) = r_{min}\] y \[ f(d_{max}) = r_{max}\]

Quantitative: Quantitative Linear Scale

  • Proceso de dos pasos:

    • Normalizar los data en el domain: \[ \alpha(d) = \frac{d - d_{min}}{d_{max} - d_{min}} \]

    • Interpolación linear en el range: \[ f(\alpha(d)) = (1 - \alpha(d)) . r_{min} + \alpha(d) . r_{max} \]

Ejemplo de Linear Scale

Otras Quantitative Scales

  • Se pueden usar para diferentes funciones, ej. quadratic, square root, etc.

  • Scale especial: log

    \[ \alpha(d) = \frac{log(d) - log(d_{min})}{log(d_{max}) - log(d_{min})} \\ f(\alpha(d)) = (1 - \alpha(d)) . r_{min} + \alpha(d) . r_{max} \]

Quantitative: Ordinal Quantized Scale

  • Nuestro data domain es quantitative, nuestro visual range es discrete - y en particular, ordered. \[ d_{min} \rightarrow d_{max} \\ R = [r_1, r_2, \dots, r_n] \]

  • Supuesto común: el range está dividido uniformemente por el domain. \[ f(\alpha(d)) = r_i \text{ Donde } i = 1 + \lfloor n.\alpha_d \rfloor \]

Caso Especial: Binning Transformation

Ordinal: Quantitative Point Scale

  • Nuestro data domain es ordinal, nuestro visual range es quantitative. \[ D = [d_1, d_2, \dots, d_m] \text{ y } r_{min} \rightarrow r_{max} \]

\[ step = \frac{ r_{max} - r_{min} }{m-1} \\ f(d_i) = r_{min} + (i-1).step \]

Ordinal: Quantitative Band Scale

  • También es común introducir padding al inicio y al final.

\[ f(d_i) = r_{min} + (i-1).step \]

  • Se usa para: bar marks, group transformations.

Ejemplo

Resumen: Una Receta para Crear Visualizations

  • Ingredientes: • Identificar los elementos de dato. • Seleccionar los data attributes. • Determinar un type para cada attribute. • Determinar un graphical mark para un elemento. • Seleccionar un visual channel para cada attribute. • Seleccionar una scale para cada channel.

  • Referencia: A Grammar of Graphics.