QGIS creare una rosa dei venti

Un amico iracheno deve rappresentare dei valori di vento, in termini di intensità e direzione, usando il centroide dei Governatorati dell’Iraq e una semplice tabella in formato CSV:

idWindNNEESESSWWNW%
18ninawa2.73.35.23.43.52.87.28.863.1
1kirkuk7.87.75.85.45.73.47.68.947.7
17al anbar6.921.83.24.34.19.713.954.2
2baghdad7.83.26.26.53.14.124.124.420.6
12wasit10.52.22.55.81.81.512.821.241.8

Procedimento suggerito

Per prima cosa occorre estrarre i centroidi dei poligoni, da strumenti di processing cerco centroidi :

per creare la rosa ho scelto la via del generatore di geometrie mediante tematizzazione:

Espressione usata:

collect_geometries( 
make_line($geometry,project($geometry,"wind_rose_N" * @wind_rose   ,radians(0))),
make_line($geometry,project($geometry,"wind_rose_NE" * @wind_rose,radians(45))),
make_line($geometry,project($geometry,"wind_rose_E"* @wind_rose ,radians(90))),
make_line($geometry,project($geometry,"wind_rose_SE" * @wind_rose ,radians(135))),
make_line($geometry,project($geometry,"wind_rose_S"* @wind_rose  ,radians(180))),
make_line($geometry,project($geometry,"wind_rose_SW"* @wind_rose  ,radians(225))),
make_line($geometry,project($geometry,"wind_rose_W"* @wind_rose  ,radians(270))),
make_line($geometry,project($geometry,"wind_rose_NW"* @wind_rose   ,radians(315)))
	)

per creare l’ellisse centrale:

espressione usata:

if ("wind_rose_%"  is not null, make_ellipse( centroid($geometry),5000,10000,0), null)

utilizzo la condizione in quanto non tutti i poligoni hanno i dati necessari per la rosa dei venti.

Riferimenti

Dati e progetto:

Video

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo di WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione /  Modifica )

Google photo

Stai commentando usando il tuo account Google. Chiudi sessione /  Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione /  Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione /  Modifica )

Connessione a %s...

Questo sito utilizza Akismet per ridurre lo spam. Scopri come vengono elaborati i dati derivati dai commenti.