Affichage des fichiers de formes des pays du monde centrés sur l'océan Pacifique à l'aide de la projection cylindrique Robinson ou Miller dans QGIS?

20

Je souhaite afficher une carte dans QGIS (fichiers de formes des pays du monde) montrant tous les pays, mais centrée sur la zone Pacifique.

Je ne suis pas familier avec Proj4, donc y a-t-il un moyen de le faire dans QGIS?

user21658
la source
Après de nombreux problèmes, j'ai découvert qu'il était préférable d'utiliser Nr; WKT 1; POLYGON ((30.01 90, 29.99 90, 29.99 -90, 30.01 -90, 30.01 90)) Diederik

Réponses:

26

Eh bien, ce n'est pas si simple, car QGIS n'est pas livré avec des projections prédéfinies de Robinson ou Miller.

J'ai donc essayé un CRS personnalisé et obtenu cette image (pas lors de la première exécution!):

entrez la description de l'image ici

Pour un méridien central à 150 ° Ouest, il est nécessaire de diviser le shapefile des frontières mondiales à 30 ° Est (pour être précis, à 29,9 et 30,1 pour éviter les intersections)

Voici donc les étapes:

  1. Téléchargez le fichier de formes des limites du monde Natural Earth et chargez-le dans QGIS
  2. Save As ... dans WGS84, et l'ajouter à la toile
  3. Supprimer le calque de l'étape 1
  4. Désactiver On-the-fly-projection
  5. Créez le fichier texte suivant:

Nr; WKT

1; POLYGONE ((30,1 89, 29,9 89, 29,9 -89, 30,1 -89, 30,1 89))

  1. Ajoutez ce fichier en Text delimited layerutilisant le point-virgule comme séparateur et WGS84 comme CRS (vous obtiendrez un polygone très fin autour de 30 ° E)
  2. Enregistrez le calque en tant que fichier de formes, ajoutez-le au canevas et supprimez le calque de l'étape 6
  3. Utiliser Vector -> Geoprocessing -> Differenceavec les deux couches de polygones
  4. Créez un CRS personnalisé nommé Robinson avec cette chaîne de projet:

+proj=robin +lon_0=-150 +x_0=0 +y_0=0 +ellps=WGS84 +datum=WGS84 +units=m +no_defs

  1. Activer On-the-fly projectionet choisir Robinson comme projet CRS

Pour la projection Miller, vous pouvez utiliser le même fichier de formes prédécoupé. Dans Proj, Miller a quelques problèmes avec l'ellipsoïde, nous prenons donc une sphère à la place (vous ne verrez pas de différence):

+proj=mill +lon_0=-150 +lat_0=0 +R=6371000 +units=m +no_defs

Avec à la volée activée, il ne semble pas aussi bien, la Nouvelle - Zélande manque à pleine mesure, mais revient en effectuant un zoom avant. Nous devons Save As ...shapefile en projection meunier, et montrons seulement que, sans en reprojection à la volée :

entrez la description de l'image ici

AndreJ
la source
3
Est-ce quelque chose que QGIS devrait gérer? Je veux dire, ce n'est pas comme si le 180e méridien était quelque chose de physique ... Y a-t-il une demande de bug / fonctionnalité pour cela?
naught101
2
Parce qu'il m'a fallu un temps embarrassant pour le trouver, on peut ajouter un CRS personnalisé sousSettings > Custom CRS...
alphabetasoup
3

QGIS est livré livré avec tout ce dont vous avez besoin (c'est-à-dire qu'il gère Proj4 pour vous sous le capot). Si vos données sont déjà dans la projection souhaitée, cliquez avec le bouton droit sur le calque et choisissez «Définir le projet CRS à partir du calque». Cela mettra la vue des données dans la même projection que vos données. Vous devrez probablement également cliquer avec le bouton droit sur votre calque et choisir "Zoomer sur l'étendue du calque".

Si vos données sont dans une autre projection, vous pouvez soit reprojeter à la volée (dans les propriétés du projet), soit reprojeter les données elles-mêmes en cliquant avec le bouton droit sur votre couche et en choisissant "Enregistrer sous". Lorsque la boîte de dialogue d'enregistrement s'ouvre, sélectionnez le CRS pour le jeu de données en sortie, puis utilisez le nouveau jeu de données reprojeté.

MappaGnosis
la source