A JSM 2019, Estoy participando en una sesión sobre Visualización interactiva dinámica de datos . Cuando fui invitado por primera vez por el presidente de la sesión, Blanton Godfrey, para contribuir con una charla, mi primer pensamiento fue: "Claro, JMP tiene muchas visualizaciones de datos dinámicas e interactivas". Pero un segundo pensamiento siguió rápidamente: "¿Qué hace eso realmente? ¿media? Todo es interactivo en estos días ".
Eso me llevó por el camino de tratar de categorizar diferentes métodos de interactividad. El objetivo principal es ayudar a definir una clasificación de la interactividad de visualización de datos que sería útil para comparar productos o discutir implementaciones individuales. En este esfuerzo inicial, he clasificado nueve técnicas, junto con videos de ejemplo de las interacciones dentro de JMP .
- Edificio de grafos
- Selección de enlace
- Filtrado de filas
- Hover detallando
- Ajuste del modelo
- Mapeo estetico
- Cambio de columna
- Rebanar volumen
- Escalado del eje
Estoy usando el mismo conjunto de datos en mis videos de ejemplo. Contiene más de 60 columnas de datos demográficos, económicos y electorales para más de 3,000 condados de EE. UU. ¡Ahora a los métodos!
Edificio de grafos
La construcción interactiva de gráficos significa construir o reestructurar un gráfico con actualizaciones de vista inmediatas. En JMP, las interacciones son directamente en la superficie. Otras implementaciones aún pueden ser interactivas con zonas de arrastre al lado del gráfico.
LITHIUM.OoyalaPlayer.addVideo('https:\/\/player.ooyala.com\/static\/v4\/production\/', 'lia-vid-w1Yng3aTE6cNO7Pg5DSI6NI35O7flBl5w928h446r11', 'w1Yng3aTE6cNO7Pg5DSI6NI35O7flBl5', {"pcode":"ltbGkyOjMl3V3pZ3Trn6T2z1_rjF","playerBrandingId":"ODI0MmQ3NjNhYWVjODliZTgzY2ZkMDdi","width":"928px","height":"446px"});
(ver en Mis Videos)
El video destaca un par de retos. Cuando se agregó la segunda variable Y, "Rep Pct", había más zonas de arrastre Y que antes, por lo que podríamos especificar dónde colocarla con respecto a la variable Y existente. Y las zonas de arrastre de Color y Tamaño son artificiales, ya que no tienen la misma posición natural que las variables de los ejes X e Y.
Este cuadro final es muy parecido a uno que aparece en una Artículo del New York Times titulado, "Los condados más conservadores son los que reciben la mayor asistencia del gobierno". Hubo algunos discusión en Twitter sobre la línea de regresión y otras características. Eso me llevó a recopilar y explorar los datos ( Oficina de Análisis Económico y Resultados de las elecciones de Tony McGovern ). Cuando me di cuenta de la cantidad de métodos de interactividad que estaba realizando durante mi exploración, pensé que esto sería un conjunto de datos de demostración adecuados.
Selección de enlace
Cuando hay varias vistas que utilizan la misma tabla de datos, el enlace de selección significa que los elementos que están resaltados en una vista tienen sus elementos correspondientes resaltados en las otras vistas. En JMP, el enlace de selección está activado todo el tiempo, lo que significa que tiene que ser rápido incluso con millones de filas. Para lograr eso, la selección se integra como una parte central de cada tabla de datos.
LITHIUM.OoyalaPlayer.addVideo('https:\/\/player.ooyala.com\/static\/v4\/production\/', 'lia-vid-91Y3g3aTE6UQB4ZFOYAANeKz_24gCiwgw912h446r804', '91Y3g3aTE6UQB4ZFOYAANeKz_24gCiwg', {"pcode":"ltbGkyOjMl3V3pZ3Trn6T2z1_rjF","playerBrandingId":"ODI0MmQ3NjNhYWVjODliZTgzY2ZkMDdi","width":"912px","height":"446px"});
(ver en Mis Videos)
El mayor desafío es cuando los elementos del gráfico no tienen una correspondencia de uno a uno entre sí, como los puntos a nivel de condado y las formas a nivel de estado en el ejemplo. Mostrar una selección parcial de forma clara para cualquier tipo de gráfico es un desafío abierto. Para el mapa, JMP resalta la forma de un estado completo cuando cualquiera de sus condados se selecciona en otro lugar. Para los elementos del gráfico que se dimensionan por conteo, como las barras de histograma, JMP utilizará el resaltado parcial para reflejar la selección parcial.
Filtrado de filas
El filtrado de filas es uno de los tipos más comunes de interacción de visualización de datos. La idea es que la visualización solo utilice un subconjunto de las filas de la tabla de datos, en función de las restricciones de los filtros que aparecen junto a la visualización.
LITHIUM.OoyalaPlayer.addVideo('https:\/\/player.ooyala.com\/static\/v4\/production\/', 'lia-vid-5iZHg3aTE6SQv6VAfU_xNjFfMCuO01jbw856h406r586', '5iZHg3aTE6SQv6VAfU_xNjFfMCuO01jb', {"pcode":"ltbGkyOjMl3V3pZ3Trn6T2z1_rjF","playerBrandingId":"ODI0MmQ3NjNhYWVjODliZTgzY2ZkMDdi","width":"856px","height":"406px"});
(ver en Mis Videos)
Hay una opción llamada "Escalas de bloqueo" que usé en el video para mantener los ejes fijos mientras se filtra. De lo contrario, se ajustarían para cada subconjunto filtrado.
Hover detallando
Un tipo de interacción pasiva es desplazarse sobre un elemento gráfico y hacer que aparezca una ventana flotante con más detalles. A veces, estos se denominan "sugerencias de herramientas", ya que se utilizaron originalmente para los iconos de la barra de herramientas. En una visualización de datos, los detalles de desplazamiento son una forma de mostrar valores más precisos para las variables registradas, así como variables relacionadas adicionales.
LITHIUM.OoyalaPlayer.addVideo('https:\/\/player.ooyala.com\/static\/v4\/production\/', 'lia-vid-NoZHg3aTE6ufjR5lBO2jl20LGnTPiryRw944h332r543', 'NoZHg3aTE6ufjR5lBO2jl20LGnTPiryR', {"pcode":"ltbGkyOjMl3V3pZ3Trn6T2z1_rjF","playerBrandingId":"ODI0MmQ3NjNhYWVjODliZTgzY2ZkMDdi","width":"944px","height":"332px"});
(ver en Mis Videos)
En el ejemplo, observe que el nombre del condado se incluyó en los detalles de desplazamiento para el diagrama de dispersión aunque esa variable no esté en el gráfico. Esto se debe a que la variable en la tabla de datos está marcada con un atributo que hace que aparezca en todos los detalles de desplazamiento de forma predeterminada.
Ajuste del modelo
El ajuste del modelo significa que la representación visual cambia a medida que se modifica un parámetro del modelo. En el ejemplo, el modelo es un spline más suave, y el parámetro del modelo es el parámetro de rigidez, lambda.
LITHIUM.OoyalaPlayer.addVideo('https:\/\/player.ooyala.com\/static\/v4\/production\/', 'lia-vid-lwZHg3aTE6Cxjm8c2z_c_96H3HNrYoBKw876h386r150', 'lwZHg3aTE6Cxjm8c2z_c_96H3HNrYoBK', {"pcode":"ltbGkyOjMl3V3pZ3Trn6T2z1_rjF","playerBrandingId":"ODI0MmQ3NjNhYWVjODliZTgzY2ZkMDdi","width":"876px","height":"386px"});
(ver en Mis Videos)
Aunque muchos modelos son demasiado lentos para tal ajuste interactivo, las computadoras son lo suficientemente rápidas para hacer más de lo que a menudo nos damos cuenta. Este modelo de aspecto simple tiene mucho que ver. Hay cuatro suavizadoras separadas, y cada una tiene un intervalo de confianza de arranque de 250x, por lo que hay 1.000 modelos de spline que se ajustan cada vez que cambia el parámetro de rigidez.
Mapeo estetico
Mapear atributos estéticos a elementos gráficos es una interacción simple pero importante. Con la estética, como los colores y los estilos de línea, a menudo necesitas verla para saber cómo funciona.
LITHIUM.OoyalaPlayer.addVideo('https:\/\/player.ooyala.com\/static\/v4\/production\/', 'lia-vid-c0ZXg3aTE6a3ZbW4jgVWp0XEhClvYMmcw888h422r187', 'c0ZXg3aTE6a3ZbW4jgVWp0XEhClvYMmc', {"pcode":"ltbGkyOjMl3V3pZ3Trn6T2z1_rjF","playerBrandingId":"ODI0MmQ3NjNhYWVjODliZTgzY2ZkMDdi","width":"888px","height":"422px"});
(ver en Mis Videos)
Los atributos simples se pueden cambiar con un clic derecho, y los atributos más complejos, como la asignación de color degradado, requieren un cuadro de diálogo de configuración y, por lo tanto, tienen un grado de interactividad menos.
Cambio de columna
En el cambio de columna, reemplaza una o más columnas de datos con otra columna de un conjunto. Aquí, la variable Y se reemplaza una por una con columnas en el panel de la izquierda.
LITHIUM.OoyalaPlayer.addVideo('https:\/\/player.ooyala.com\/static\/v4\/production\/', 'lia-vid-swZ3g3aTE6nqw8PbCMQysv4S0v_x9j8Iw856h386r61', 'swZ3g3aTE6nqw8PbCMQysv4S0v_x9j8I', {"pcode":"ltbGkyOjMl3V3pZ3Trn6T2z1_rjF","playerBrandingId":"ODI0MmQ3NjNhYWVjODliZTgzY2ZkMDdi","width":"856px","height":"386px"});
(ver en Mis Videos)
El cambio de columna puede ser una buena manera de pasar rápidamente por un nuevo conjunto de datos.
Rebanar volumen
La división de volúmenes es una forma de explorar un espacio de datos multidimensional al graficar un conjunto de divisiones bidimensionales. los Perfilador en JMP utiliza el corte para explorar modelos multidimensionales. En este ejemplo, estamos modelando Rep Pct, en la Y, contra tres factores, Ingresos personales, Transferencia personal y Tasa de votación, lo que da como resultado una superficie de cuatro dimensiones. Cada cuadro muestra una división a través de una X, mientras que las otras X se mantienen fijas.
LITHIUM.OoyalaPlayer.addVideo('https:\/\/player.ooyala.com\/static\/v4\/production\/', 'lia-vid-4yZ3g3aTE6juUfpYEYjPJuyqCiE3P95ew876h378r954', '4yZ3g3aTE6juUfpYEYjPJuyqCiE3P95e', {"pcode":"ltbGkyOjMl3V3pZ3Trn6T2z1_rjF","playerBrandingId":"ODI0MmQ3NjNhYWVjODliZTgzY2ZkMDdi","width":"876px","height":"378px"});
(ver en Mis Videos)
La Transferencia personal parece tener poco efecto (es mayormente una línea plana en esta porción, al menos), pero a medida que interactuamos con ella y cambiamos su valor fijo usado por los otros marcos, vemos una interacción con el Ingreso Personal. Los ingresos personales tienen una pendiente positiva suelta para transferencias personales altas y una pendiente negativa fuerte para valores de transferencias personales bajos.
Escalado del eje
Una escala define cómo se asignan los valores de los datos a las coordenadas de la pantalla y se visualiza a sí misma como un eje. La interacción de escalado del eje es la capacidad de cambiar ese mapeo manipulando directamente el eje. Las interacciones incluyen desplazamiento, estiramiento y zoom.
LITHIUM.OoyalaPlayer.addVideo('https:\/\/player.ooyala.com\/static\/v4\/production\/', 'lia-vid-JhZ3g3aTE6fEz1j6iZo-YcS1fqY37RRLw756h406r321', 'JhZ3g3aTE6fEz1j6iZo-YcS1fqY37RRL', {"pcode":"ltbGkyOjMl3V3pZ3Trn6T2z1_rjF","playerBrandingId":"ODI0MmQ3NjNhYWVjODliZTgzY2ZkMDdi","width":"756px","height":"406px"});
(ver en Mis Videos)
La escala del eje no siempre es solo una cuestión de volver a dibujar elementos en diferentes ubicaciones. Tenga en cuenta que el diagrama de puntos de la derecha debe ajustar su diseño de esquivado de marcadores para las nuevas escalas, y los propios ejes a veces tienen que volver a calcular cosas como los intervalos de marca de verificación. En el caso o visualizaciones geográficas, incluso es útil cambiar las proyecciones según la escala.
LITHIUM.OoyalaPlayer.addVideo('https:\/\/player.ooyala.com\/static\/v4\/production\/', 'lia-vid-BxZ3g3aTE6g374JDRrFcRvP3b9lNPY_9w920h426r791', 'BxZ3g3aTE6g374JDRrFcRvP3b9lNPY_9', {"pcode":"ltbGkyOjMl3V3pZ3Trn6T2z1_rjF","playerBrandingId":"ODI0MmQ3NjNhYWVjODliZTgzY2ZkMDdi","width":"920px","height":"426px"});
(ver en Mis Videos)
Para JMP, la escala regional utiliza un Albers proyección de área igual, y la escala mundial utiliza un Kavrayskiy VII Proyección de compromiso.
Más interacciones?
Dados estos nueve métodos de interacción de visualización de datos, podemos considerar mejor otras preguntas:
- ¿Qué otros métodos de interacción general son útiles en la visualización de datos? Estoy diciendo métodos "generales", ya que imagino que no hay límite para el número de interacciones de especialidad orientadas hacia un tipo particular de gráfico. Por ejemplo, JMP tiene una forma de cambiar interactivamente el tamaño de los contenedores de histogramas que no incluí aquí como un método general.
- ¿Deberían algunos de estos métodos dividirse en múltiples métodos? Tal vez la división del volumen es diferente para la exploración de datos en comparación con la exploración del modelo Estoy considerando cambiar el tamaño del gráfico interactivo como un tipo de escala de eje, pero tal vez valga la pena tener su propia categoría.
- ¿Deberían combinarse algunos de estos métodos como variedades del mismo método? Tal vez el filtrado de filas y el cambio de columnas son dos variedades de una interacción de subconjunto más grande.
- ¿Hay mejores nombres para estos métodos, ya sean preexistentes o nuevos? Algunos de estos nombres provienen de la terminología JMP, y algunos son mi propio invento para esta discusión.
- ¿Deberían reconocerse los diferentes niveles de cada método? Por ejemplo, debemos distinguir entre la creación de gráficos con o sin una vista previa en vivo.
Espero escuchar comentarios sobre estas y otras preguntas, ya sea aquí, en JSM o en Twitter.