Ejercicio: visualización de datos con el operador Render

Completado

Hemos usado un conjunto de datos meteorológico para agregar y comparar el número de determinados tipos de eventos de tormenta en diferentes estados de EE. UU. durante el año 2007. Aquí, visualizará estos resultados con la ayuda de gráficos de rangos de tiempo.

Use el operador render.

Recuerde que ha usado el operador summarize para agrupar eventos por un campo común, como State. En la unidad anterior, usó diferentes versiones del operador count para comparar el número y los tipos de eventos por estado. Visualizar estos resultados puede servir de ayuda para comparar la actividad entre estados.

Para visualizar los resultados, usará el operador render. Este operador se encuentra al final de una consulta. Dentro del operador render, especificará qué tipo de visualización se va a usar, como columnchart, barchart, piechart, scatterchart, pivotchart y otros. Opcionalmente, también puede definir diferentes propiedades de la visualización, como los ejes X o Y.

En este ejemplo, visualizará la consulta anterior mediante un gráfico de barras.

  1. Ejecute la consulta siguiente.

    Ejecución de la consulta

    StormEvents
    | summarize count(),
        EventsWithDamageToCrops = countif(DamageCrops > 0),
        dcount(EventType) by State
    | sort by count_
    | render barchart
    

    Debería obtener resultados similares a la imagen siguiente:

    Screenshot of query with bar chart results.

  2. Observe la leyenda situada a la derecha del gráfico de barras. Cada valor de la leyenda representa una columna de datos diferente que se ha resumido por State en la consulta. Pruebe a seleccionar uno de los valores, como count_, para alternar la presentación de estos datos en el gráfico de barras. Al desactivar count_, se quita el recuento total y se deja con el recuento de eventos que causaron daños y un número distinto de eventos. Debería obtener un gráfico similar a la imagen siguiente:

    Screenshot of column chart results with count_ field toggled off.

  3. Eche un vistazo al gráfico de barras resultante. ¿Qué información puede extraer? Puede observar, por ejemplo, que Texas tuvo la mayoría de los eventos de tormenta individuales, pero Iowa tuvo la mayor incidencia de daños de los eventos de tormenta.

Agrupación de valores mediante la función bin()

Hasta ahora, ha usado funciones de agregación para agrupar eventos por State. Veamos ahora la distribución de tormentas a lo largo del año, mediante la agrupación de los datos por tiempo. Los valores de tiempo que tenemos en cada registro son la hora de inicio y la hora de finalización. Vamos a agrupar las horas de inicio de evento por semana, por lo que podremos ver cuántas tormentas se produjeron cada semana durante el año 2007.

Usará la función bin(), que agrupa los valores en intervalos establecidos. Por ejemplo, si tiene datos de cada día del año y quiere agruparlos por semana. O bien, quiere agrupar los datos de la población por rango de edad. La sintaxis de este operador es:

bin(value,roundTo)

El valor de rango puede ser un número, una fecha o un intervalo de tiempo. Agregará el recuento mediante la función bin() para obtener un recuento de eventos por semana. El valor que quiere agrupar es StartTime del evento de tormenta, con el tamaño de rango roundTo de 7days o 7d para abreviar. Por último, representará los datos como un gráfico de columnas para crear un histograma.

  1. Ejecute la siguiente consulta:

    Ejecución de la consulta

    StormEvents
    | summarize count() by bin(StartTime, 7d)
    | render columnchart
    

    Debería obtener resultados similares a la imagen siguiente:

    Screenshot of binned results graph.

  2. Eche un vistazo al histograma resultante. Mantenga el puntero sobre una de las barras para ver la hora de inicio del rango (valor x) y el recuento de eventos (valor y).

Use el operador sum.

En la consulta anterior, ha examinado el número de eventos de tormenta a lo largo del tiempo. Ahora echemos un vistazo al daño causado por estas tormentas. Para ello, usará la función de agregación sum, ya que desea ver la cantidad total de daños causados en cada intervalo de tiempo. El conjunto de datos con el que está trabajando tiene dos columnas relacionadas con daños: DamageProperty y DamageCrops.

En la consulta siguiente, primero creará una columna calculada que agrega estos dos orígenes de daños. A continuación, creará una agregación de daños totales con el rango por semana. Por último, representará un gráfico de columnas de los daños semanales causados por todas las tormentas.

  1. Ejecute la siguiente consulta:

    Ejecución de la consulta

    StormEvents
    | extend damage = DamageProperty + DamageCrops
    | summarize sum(damage) by bin(StartTime, 7d)
    | render columnchart
    

    Debería obtener resultados similares a la imagen siguiente:

    Screenshot of damage column chart binned by week.

  2. La consulta anterior muestra los daños como una función de tiempo. Otra manera de comparar el daño es por tipo de evento. Ejecute la consulta siguiente para usar un gráfico circular para comparar los daños causados por distintos tipos de eventos.

    Ejecución de la consulta

    StormEvents
    | extend damage = DamageProperty + DamageCrops
    | summarize sum(damage) by EventType
    | render piechart
    

    Debería obtener resultados similares a la imagen siguiente:

    Screen shot of Kusto query with pie chart and results.

  3. Mantenga el puntero sobre uno de los segmentos del gráfico circular. Debería ver el valor absoluto (daños totales causados por este tipo de evento) y el porcentaje correspondiente de los daños totales.