Si una imagen es vale más que mil palabras, la visualización de datos vale más que mil puntos de datos.
Con el lanzamiento de Couchbase 7.0.2, el Query Workbench (y el Analytics Workbench) incluyen ahora una pestaña de Gráficos que permite crear gráficos y otras visualizaciones de datos basadas en los resultados de una consulta determinada.
Una mirada más atenta a los gráficos
Internamente, utilizamos D3.js para representar los gráficos. Cada valor individual se puede ver utilizando la información sobre herramientas hover, y la leyenda (colores y lo que representan) para los gráficos multicolores se ven en la esquina derecha del lienzo.
Los gráficos de visualización de datos también pueden descargarse como SVG utilizando el botón situado a la derecha del lienzo. El tamaño del lienzo o de la propia pantalla ajusta automáticamente los gráficos.
A continuación se muestra un GIF de lo sencillo que es empezar a utilizar gráficos con el banco de trabajo de consultas:
La pestaña Gráficos admite ocho tipos diferentes de gráficos:
- Esparcir Reunir
- Dispersión conectada
- Línea
- Zona
- Bar
- Barra agrupada
- Pastel
- Donut
Gráfico de dispersión
Los gráficos de dispersión incluyen gráficos X-Y estándar con la posibilidad de visualizar los datos por colores. Este gráfico permite observar la relación entre dos valores y agrupar puntos de datos utilizando un tercer valor, básicamente como una correlación. Los gráficos de dispersión son puntos que representan datos individuales.
Supongamos que tenemos algunos datos sobre precipitaciones en una zona concreta del norte de California. Nuestro conjunto de datos incluye la precipitación, el día del año hidrológico, la fecha en general y la precipitación registrada para ese día.
En el siguiente gráfico se muestran las precipitaciones anuales de los últimos cinco años.
1 |
seleccione DíaDelAñoAgua,PrecipToDate,Año de datos_pluviometria donde Año en [2010,2012,2014,2016,2018,2021]; |
Veamos primero una sencilla representación tabular de estos datos.
Al trazar esto como un gráfico obtenemos lo siguiente:
Otro ejemplo divertido que podemos ver es trazar los datos geográficos de nuestro viaje-muestra
cubo y trazar todos los aeropuertos de Estados Unidos.
1 |
seleccionar * de `viaje-muestra` donde tipo = aeropuerto y país = "Estados Unidos"; |
Podemos ver los datos agrupados por zonas horarias de forma tan nítida que nos ofrece un mapa de EEUU. También podemos ver fácilmente cualquier discrepancia en los datos al visualizarlos mediante gráficos. Aquí vemos un punto de datos aleatorio para la zona horaria N que introduje como dato erróneo.
Este tipo de gráficos son útiles cuando se intenta identificar el grado de correlación entre dos valores. Mediante la función de agrupación, puede agrupar los puntos de datos en función del color. Esto puede mostrarle si hay alguna brecha inesperada en los datos o si hay algún punto atípico. Esto puede ser útil si desea segmentar los datos en diferentes partes, como en el desarrollo de personajes de usuario.
Cuando tenemos muchos puntos de datos para trazar, puede surgir el problema de la sobretrazabilidad.
Gráfico de dispersión conectado
Similar al gráfico de líneas, el gráfico de dispersión conectado muestra la evolución o tendencia de un valor numérico dado sobre otro valor que suele representar un intervalo de tiempo, a la vez que muestra los puntos de datos individuales. Permite visualizar el tipo o relación o la tendencia, si es lineal o exponencial, etc.
Como ejemplo, veamos el mercado de criptodivisas, concretamente Bitcoins y veamos cómo es la tendencia de los valores altos para el mes de septiembre utilizando la API Polygon IO.
1 |
seleccione milis_to_str(artículo.t,"2021-07-21") como fecha, artículo de rizo("https://api.polygon.io/v2/aggs/ticker/X:BTCUSD/range/1/day/2021-09-01/2021-09-30?adjusted=true&sort=asc&apiKey=") como res sin anestesia res.resultados como artículo; |
En este ejemplo, utilizamos sin anestesia
para aplanar los resultados anidados devueltos por la API.
Gráfico lineal
El gráfico de líneas es una visualización de datos que muestra la evolución de un valor numérico sobre otro valor, normalmente el del tiempo.
Veamos cómo les ha ido a las acciones de Couchbase desde su salida a bolsa en julio.
1 2 |
seleccione milis_to_str(artículo.t,"2021-07-21T21:00:00") como fecha, artículo de rizo("https://api.polygon.io/v2/aggs/ticker/BASE/range/1/day/2021-07-22/2021-09-21?apiKey=") res sin anestesia res.resultados como artículo |
Los gráficos de líneas se utilizan para hacer un seguimiento de los cambios en periodos de tiempo cortos y largos. Cuando los cambios son pequeños, los gráficos de líneas son mejores que los de barras. Los gráficos de líneas también pueden utilizarse para comparar los cambios registrados en más de un grupo durante el mismo periodo de tiempo.
Cuadro de áreas
Los gráficos de área son muy similares a los gráficos de líneas y barras, en el sentido de que combinan un gráfico de líneas y barras para mostrar cómo cambian los valores numéricos con el tiempo (o el valor utilizado). Los gráficos de área ofrecen una distribución en la visualización de los datos.
Para este ejemplo, vamos a trabajar con algunos datos de COVID-19 para California. Veamos algunas estadísticas de vacunación para el año 2021.
1 |
seleccionar * de covid_datos.estado.demografía donde fecha_parte_str(fecha,"año") = 2021 límite 50; |
Gráficos de barras y gráficos de barras agrupados
Los gráficos de barras se utilizan para visualizar datos categóricos con barras rectangulares de altura proporcional a los valores que representan.
Cuando desee comparar varios valores con la misma base (normalmente la del tiempo), utilice un gráfico de barras agrupadas. Los gráficos de barras son especialmente útiles cuando los cambios a lo largo del tiempo son mayores.
En primer lugar, vamos a representar los mismos datos del gráfico de áreas anterior como un gráfico de barras.
Ahora comparemos qué tipos de vacunas fueron las más populares por condado en el mes de septiembre: ¿Moderna, Pfizer o Jansen?
1 |
seleccione dosis_modernas,jj_doses, pfizer_doses,formato_fecha_str(fecha,"2020-09-09") como fecha de covid_datos.condado.vacunas donde fecha_parte_str(fecha,"año") = 2021 y fecha_parte_str(fecha,"mes") en [9] |
Un punto importante a tener en cuenta con los gráficos de barras y barras agrupadas es que si la diferencia entre el valor más pequeño y el más grande que se representa es alta, los valores más pequeños se representan como 0 (sin barra).
Con el tiempo, esta función añadirá soporte para una escala logarítmica para trazar valores que oscilan ampliamente.
Gráficos de rosquillas y de tartas
Los gráficos circulares y de rosquilla representan una parte de un todo. Desglosan los datos totales en trozos en función de los valores numéricos que introduzcas.
La diferencia entre los gráficos de rosquilla y los de tarta es más bien cosmética. Si prefiere ver las partes como un pastel, entonces elija los gráficos circulares. En estos gráficos, los 3% datos más bajos se agruparán en otros y se mostrarán como una lista en el lateral del lienzo.
A partir de nuestros datos de vacunación COVID-19, veamos los datos demográficos de distribución de la población.
1 |
seleccione población_total, etiqueta_raza de covid_datos.estado.demografía; |
Para ver el gráfico del donut, veamos el número de demográficos totalmente vacunados.
1 |
seleccione suma(totalmente_vacunado) como vacunados, etiqueta_raza de covid_datos.estado.demografía grupo por etiqueta_raza; |
La visualización inmediata de los datos mediante gráficos en las pestañas del banco de trabajo de consultas le facilitará la comprensión inmediata de sus datos.
Resumen de características
Las nuevas funciones de Gráficos incluyen todo lo siguiente:
- El eje X toma un valor numérico o
fecha
,tiempo
omarca de tiempo
valor. - Los formatos de fecha, hora y timestamps soportados incluyen ISO8601.
2021-09-21T05:04:55.999
2021-09-21T05:04:55
2021-09-21 05:04:55.999
2021-09-21 05:04:55
2021-09-21
- El eje Y debe ser numérico.
- La opción gather-by-color toma cualquier valor que luego se utiliza para agrupar los datos.
- Para los gráficos de tarta/donuts, barras/barras agrupadas, los valores deben ser siempre numéricos. Las etiquetas toman valores numéricos, fechas, horas, marcas de tiempo (en un formato específico) y ordinales.
- Los datos geográficos (SIG) pueden representarse mediante gráficos X-Y (como en el ejemplo de la muestra de viajes).
- Capacidad de sobrevuelo.
- Descargue y comparta gráficos como SVG.
Trabajos futuros
Otros tipos de gráficos que tenemos previsto admitir son:
- Gráficos multilínea
- Varios gráficos en el mismo lienzo
- Mapas
- Gráficos de barras apiladas y porcentuales
- Gráficos de barras bidireccionales
- Histogramas
- Parcelas burbuja
- Mapas de densidad
- Gráficos de espaguetis
- Mapas de calor
También tenemos previsto admitir ordinales en el eje del gráfico y más formatos de fecha, hora y fecha-hora.