Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.

Reply
Syndicate_Admin
Administrator
Administrator

Dirección del viento Aster Plot

Hola

Estoy tratando de crear un diagrama de aster (o similar) que muestre la dirección del viento en una estación meteorológica. Las mediciones fueron cada 15 minutos, a partir de las cuales he creado una medición diaria promedio. Luego he creado una columna que convierte la medición (presentada en grados) en una dirección, es decir, N, E, NW, SSW, etc. Por lo tanto, quiero presentar un gráfico que muestre el número de días promediados dentro de cada categoría de dirección de la velocidad del viento. A continuación se muestra mi salida hasta ahora.

kbdw_1-1686793953358.png

Hay dos problemas principales con esta salida:

  • No puedo ordenar el "orden" de las categorías de dirección en la trama para que coincida con el diseño de la brújula.
  • Cualquier categoría de dirección sin ningún punto de datos, por ejemplo, N, NE, no se traza en absoluto.

Espero que alguien pueda ayudar.

11 REPLIES 11
Syndicate_Admin
Administrator
Administrator

Hola Daniel,
He estado tratando de extender esto. Me gustaría codificar por colores por velocidad del viento (que luego me da etiquetas para cada uno) y tener las direcciones equidistantes del centro. He creado dos gráficos uno encima del otro. Pero pregúntate si hay una manera de hacerlo en un visual. También me gustaría que los colores estuvieran en orden de velocidad del viento

ToriSugden_0-1695519735114.png

Syndicate_Admin
Administrator
Administrator

Gracias por las ideas. Necesito embotellar esto de alguna manera. ¿No estás planeando escribir un libro o algo sobre los detalles más finos de la vinculación de datos por casualidad?

Syndicate_Admin
Administrator
Administrator

Versión actualizada con una columna ThetaMid (que es solo el valor de ángulo en radianes para la marca de texto):

dmp_1-1687468085318.png

{
  "data": {"name": "dataset"},
  "layer": [
    {
      "mark": {
        "type": "arc",
        "innerRadius": 20,
        "stroke": "#444"
      }
    },
    {
      "mark": {
        "type": "text",
        "radiusOffset": 50
      },
      "encoding": {
        "text": {
          "field": "Direction",
          "type": "nominal"
        },
        "theta": {
          "value": {
            "expr": "datum['ThetaMid']"
          }
        }
      }
    }
  ],
  "encoding": {
    "theta": {
      "value": {
        "expr": "datum['Theta']"
      },
      "type": "quantitative",
      "stack": false
    },
    "theta2": {
      "value": {
        "expr": "datum['Theta2']"
      },
      "type": "quantitative"
    },
    "radius": {
      "field": "Sum of Count",
      "scale": {
        "type": "sqrt",
        "zero": true
      }
    },
    "color": {
      "field": "Direction",
      "type": "nominal"
    }
  }
}

Bien

Daniel

Syndicate_Admin
Administrator
Administrator

@lbendlin,

Si desea enlazar explícitamente los valores theta (y theta2) a la representación radiante de los datos, deberá utilizar la definición de valor en la codificación (que asigna el valor explícito). Si enlaza un campo, Vega-Lite calculará el ángulo en función del rango de valores de mínimo a máximo (aunque probablemente podría establecer manualmente el rango y el dominio en la escala para que coincida con el valor radián, si desea específicamente seguir utilizando la definición de campo).

No estoy seguro de si esto es exactamente lo que buscas, pero puede acercarte:

dmp_0-1687467705995.png

{
  "data": {"name": "dataset"},
  "layer": [
    {
      "mark": {
        "type": "arc",
        "innerRadius": 20,
        "stroke": "#444"
      }
    },
    {
      "mark": {
        "type": "text",
        "radiusOffset": 50
      },
      "encoding": {
        "text": {
          "field": "Direction",
          "type": "nominal"
        }
      }
    }
  ],
  "encoding": {
    "theta": {
      "value": {"expr": "datum['Theta']"},
      "type": "quantitative",
      "stack": false
    },
    "theta2": {
      "value": {"expr": "datum['Theta2']"},
      "type": "quantitative"
    },
    "radius": {
      "field": "Sum of Count",
      "scale": {
        "type": "sqrt",
        "zero": true
      }
    },
    "color": {
      "field": "Direction",
      "type": "nominal"
    }
  }
}

Bien

Daniel

Syndicate_Admin
Administrator
Administrator

Hmm. Parece que no puedo hacer que gire de la manera correcta, incluso con los ajustes theta. También se intentó agregar marcadores de posición para las direcciones que faltaban.

lbendlin_0-1687315028279.png

{
  "data": {"name": "dataset"},
  "layer": [
    {
      "mark": {
        "type": "arc",
        "innerRadius": 20,
        "stroke": "#444"
      }
    },
    {
      "mark": {
        "type": "text",
        "radiusOffset": 50
      },
      "encoding": {
        "text": {
          "field": "Direction",
          "type": "nominal"
        }
      }
    }
  ],
  "encoding": {
    "theta": {
      "field": "Theta",
      "type": "quantitative",
      "stack": false
    },
    "theta2": {
      "field": "Theta2",
      "type": "quantitative",
      "stack": false
    },
    "radius": {
      "field": "Sum of Count",
      "scale": {
        "type": "sqrt",
        "zero": true
      }
    },
    "color": {
      "field": "Direction",
      "type": "nominal",
      "legend": true
    }
  }
}

Syndicate_Admin
Administrator
Administrator

Hola @lbendlin - también tienes theta2 (ángulo final) disponible para codificación. Aquí está el enlace del documento (con ejemplo interactivo).

Syndicate_Admin
Administrator
Administrator

@dm-p ¿Puedes ayudarme a superar la joroba? Encontré theta pero no sé cómo dibujar arcos parciales.

Syndicate_Admin
Administrator
Administrator

Feliz de usar una trama alternativa.

Las categorías en esa gráfica todavía necesitan cambiar para que "N" esté en el punto norte del diagrama, y así sucesivamente. Además, ¿se puede alterar la posición de los límites de la categoría dentro del círculo? Por el momento, por ejemplo, "N" "comenzaría" a 0 grados, mientras que de hecho (con mis categorías de dirección definidas como están) necesitaría abarcar 348.75 - 11.25 grados - como se muestra a continuación.

kbdw_0-1687232909470.png

Syndicate_Admin
Administrator
Administrator

La parcela estándar de Aster no es del todo satisfactoria. Probablemente tendría sentido usar Deneb para esto en su lugar.

lbendlin_0-1687226066690.png

Ver adjunto.

Syndicate_Admin
Administrator
Administrator

Gracias por su respuesta. Soy un principiante en Power BI, así que hágamelo saber si necesita más información.

A continuación se muestra un conjunto de datos de muestra que muestra la dirección del viento promedio diaria en grados, convertida a una dirección.

Dt.1CountDirection

20/06/2023218.255102SW
19/06/2023225.3489583SW
18/06/2023204.5104167SSW
17/06/2023194.9947917SSW
16/06/2023198.8020833SSW
15/06/2023179.8125S
14/06/2023191.6041667SSW
13/06/2023197.2447917SSW
12/06/2023185.725625S
11/06/2023184.21875S
10/06/2023183.609375S
9/06/2023118.2463542ESE
8/06/202389.62833333E
7/06/2023128.9645833SE
6/06/2023168.300625SSE
5/06/2023207.6360417SSW
4/06/2023246.9727083WSW
3/06/2023286.3077083ONO
2/06/2023297.9644792ONO
1/06/2023211.5104167SSW
31/05/2023199.5104167SSW
30/05/2023228.2552083SW
29/05/2023278.5677083W
28/05/2023208.4166667SSW
27/05/2023193.6979167SSW
26/05/2023214.1041667SW
25/05/2023188.5729167S
24/05/2023190.0677083S
23/05/2023189.8020833S
22/05/2023198.7135417SSW
21/05/2023201.9947917SSW
20/05/2023229.9427083SW
19/05/2023217.9583333SW
18/05/2023209.640625SSW
17/05/2023177.4895833S
16/05/2023190.2291667S
15/05/2023189.8385417S
14/05/2023187.9895833S
13/05/2023188.953125S
12/05/2023208.9166667SSW
11/05/2023194.9791667SSW
10/05/2023204.390625SSW
9/05/2023284.578125ONO
8/05/2023260.7239583W
7/05/2023241.5729167WSW
6/05/2023318.96875NW
5/05/2023238.125WSW
4/05/2023222.0260417SW
3/05/2023272.6875W
2/05/2023300.546875ONO
1/05/2023218.6041667SW
30/04/2023186.3541667S
29/04/2023176.21875S
28/04/2023196.7760417SSW
27/04/2023184.8125S
26/04/2023175.640625S
25/04/2023173.4791667S
24/04/2023191.921875SSW
23/04/2023176.0625S
22/04/2023204.0520833SSW
21/04/2023213.0052083SSW
20/04/2023214.5104167SW
19/04/2023226.3177083SW
18/04/2023220.5260417SW
17/04/2023177.5104167S
16/04/2023190.2604167S
15/04/2023206SSW
14/04/2023177.8177083S
13/04/2023179.9635417S
12/04/2023201.4010417SSW
11/04/2023262.8854167W
10/04/2023211.82125SSW
9/04/2023220.2760417SW
8/04/2023194.7916667SSW
7/04/2023170.5364583S
6/04/2023189.1458333S
5/04/2023154.34375SSE
4/04/2023195.390625SSW
3/04/2023198.109375SSW
2/04/2023181.595S
1/04/2023257.9895833WSW
31/03/2023198.75SSW
30/03/2023220.5260417SW
29/03/2023207.7291667SSW
28/03/2023195.4427083SSW
27/03/2023229.9583333SW
26/03/2023164.5885417SSE
25/03/2023189.21875S
24/03/2023226.28125SW
23/03/2023215.75SW
22/03/2023144.5681818SE

El resultado esperado se parecería al siguiente, excepto que las direcciones se organizarían de manera que se asemejaran a una rosa de los vientos.

kbdw_2-1687219726968.png


@lbendlin escribió:

Lo más fácil es tener una tabla de dimensiones estática con todas las direcciones deseadas en el orden correcto (agregue una columna de índice si es necesario y "ordene una columna por otra columna"). Luego elija la dirección de esa tabla y diga "mostrar elementos sin datos".


Comprenda esto en principio, pero agradecería instrucciones sobre cómo lograrlo.

Syndicate_Admin
Administrator
Administrator

Ambos problemas pueden mitigarse. Lo más fácil es tener una tabla de dimensiones estática con todas las direcciones deseadas en el orden correcto (agregue una columna de índice si es necesario y "ordene una columna por otra columna"). Luego elija la dirección de esa tabla y diga "mostrar elementos sin datos".

Proporcione datos de muestra que cubran completamente su problema.
Muestre el resultado esperado en función de los datos de muestra que proporcionó.

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

Check out the April 2024 Power BI update to learn about new features.

April Fabric Community Update

Fabric Community Update - April 2024

Find out what's new and trending in the Fabric Community.