Matrice de cartographie des origines et des destinations dans QGIS?

17

J'ai un point central sur une carte et j'ai d'autres points dans une couche distincte (l'emplacement d'un lieu et les villes d'origine des visiteurs du lieu). Existe-t-il un plugin qui générerait une sortie similaire aux cartes de destination des compagnies aériennes comme celle-ci;

un exemple

Il n'est pas nécessaire que ce soit des lignes de type "grand cercle", seules des lignes droites suffiront. Il s'agit d'une représentation visuelle du point d'origine pour les visiteurs de certains événements.

Des conseils ou des recommandations de plugin?

normis
la source
3
Je soupçonne que le billet de blog d'Underdark sur le sujet devrait répondre à votre question, voir VISUALISER LES CONNEXIONS MONDIALES . La matrice des distances n'est probablement pas non plus le meilleur adjectif, peut-être «carte de flux» ou «origine-destination». Voici deux autres exemples sur le site pour référence, Représentation des flux réseau et Comment créer des arcs entre deux points en Python? . Peut-être ré-étiqueter avec le réseau au lieu de la distance?
Andy W
Merci de m'avoir corrigé, vous avez raison, je ne savais pas comment décrire ce dont j'avais besoin. Underark a exactement fait ce que je recherche, mais elle ne décrit pas vraiment comment cela a été fait. Si j'ai trois points, comment lier deux d'entre eux au troisième? Disons que j'ai un tableau comme celui-ci: "lat-origin, long-origin, lat-dst, lon-dest"
normis
2
Je dirais juste éditer votre question pour être explicite sur la façon dont vos données sont actuellement configurées, et il est probablement sombre (ou un autre utilisateur QGIS) viendra et donnera une réponse à votre situation particulière.
Andy W
Question en double? «Cartes d'itinéraire» point à point incurvées
RyanKDalton-OffTheGridMaps

Réponses:

9

Si vous cherchez simplement à connecter des points d'origine / de destination et que vous n'avez pas besoin des lignes courbes du "grand cercle", jetez un œil au plugin QGIS appelé " mmqgis ". Il a un outil Hub Lines qui, je pense, créera le visuel que vous recherchez.

"L'outil de lignes de moyeu crée des diagrammes de moyeu et de rayons avec des lignes tracées à partir des points de la couche" Spoke Point "vers les points correspondants de la couche" Hub Point ". La détermination du hub qui va avec chaque point est basée sur une correspondance entre le" Hub " ID Attribute "sur les points de concentrateur et" Spoke Hub ID Attribute "sur les points de rayon."

RyanKDalton-OffTheGridMaps
la source
5

Pour que cela fonctionne, vous aurez besoin d'une installation PostGIS fonctionnelle. Les fichiers de formes peuvent être chargés dans PostGIS à l'aide de l'outil QGIS PostGIS Manager.

Les requêtes SQL peuvent être exécutées dans plusieurs outils à partir de QGIS (s'il est connecté à une base de données PostGIS), par exemple. Plugin RT SQL Layer.

Si vous n'avez qu'un seul point de destination mais plusieurs points source (table "source", la requête SQL dans http://underdark.wordpress.com/2011/08/20/visualizing-global-connections/ peut être simplifiée pour:

CREATE TABLE connections AS (
  source.id,
  SELECT ST_Transform(ST_Segmentize(ST_MakeLine(
    ST_Transform(ST_SetSRID(ST_Makepoint(--your lon lat here--),4326), 953027),
    ST_Transform(source.the_geom, 953027)
  ), 100000 ), 4326 ) AS the_geom
FROM source
);

N'oubliez pas d'insérer d'abord le CRS # 953027.

obscur
la source
ok, question débutant, où dois-je l'utiliser dans QGIS? ressemble à une commande de base de données, mais je n'ai jamais utilisé de sources de base de données dans Qgis, et je ne sais pas où coller ce qui précède :) Toutes mes sources de données sont des fichiers SHP ou CSV.
normis
1
Dans ce cas, je recommande de consulter certains didacticiels PostGIS et le manuel QGIS sur l'utilisation des bases de données.
underdark
Sans CRS # 953027, vous pouvez également utiliser la fonction Géographie dans PostGIS: gisforthought.com/great-circle-flight-lines-in-postgis et gis.stackexchange.com/a/84583/16530
HeikkiVesanto
4

Vous pouvez représenter les cartes de flux via l'extension de cartographie de flux nœud-2-nœuds qui est disponible à partir du repo du plugin QGIS;

http://plugins.qgis.org/plugins/FlowMapper/

il existe également des exemples de données et de documentation dans le fichier zip.

les coordonnées du nœud d'entrée et la matrice d'interaction doivent être au format texte plan, délimitées par des espaces blancs.

cempro
la source
0

En supposant que vos données sont configurées comme;

ID Origin_X Origin_Y Dest_X Dest_Y

un package freeware CrimeStat peut prendre en entrée un fichier de formes avec les emplacements d'origine et de destination et sortir un fichier de formes avec les lignes tracées. Je suis sûr que vous avez juste besoin d'avoir un identifiant unique répertorié dans votre fichier de formes pour indiquer à CrimeStat les lignes à connecter.

Je suis sûr que vous pouvez le faire plus directement dans QGIS, mais CrimeStat fournit une interface graphique douce pour accomplir la tâche si nécessaire. Les questions précédentes sur le site que vous souhaitez parcourir sont étiquetées .

Notez que vous pouvez utiliser des coordonnées projetées ou lat-lon dans CrimeStat, mais cela ne produira pas de grandes lignes de cercle (qui nécessitent de diviser les lignes en plusieurs segments plus petits).

Andy W
la source