2017-09-04 1 views
1

x et y sont des vecteurs de coordonnées - latitude et longitude. M est une matrice dans laquelle il y a une valeur pour chaque coordonnée. Je veux que la sortie imagesc s'affiche sur la figure worldmap. La chose est que je ne suis pas sûr de savoir comment faire cela, car imagesc n'identifie pas ses axes comme coordonnées.Comment afficher 'imagesc' en haut de 'worldmap' dans Matlab?

Il est différent de la question here, parce que je veux afficher l'image et non des points.

x=[ 28.3473 28.3584 28.3695 28.3807 28.3918 28.4029 ...] 
y=[ -44.7629 -44.7527 -44.7425 -44.7322 -44.7220 -44.7117 ...] 


figure 
worldmap([min(y)-2 min(x)+2],[min(y)-2 max(y)+2]) 
load coastlines 
plotm(coastlat,coastlon) 


imagesc(x, y, M) 

Ceci est un exemple de matrice M (200x200). Il contient le poids de chaque cellule dans une grille. Il est une sortie d'une fonction d'interpolation griddata .:

NaN     NaN     NaN 
38.7833096862656  NaN     NaN 
23.3637431502031 55.5086387622325 105.215090860562 
15.0575548356974 33.2628405320320 84.5790859739102 
6.96794335045748 12.7895951273141 59.3208680706436 
0      0    34.9244470279273 
+0

Est-ce que 'tenir sur 'travailler? – m7913d

+1

@ m7913d Il n'a pas, j'ai essayé que –

+0

duplication possible de [Points de tracé sur une carte dans MATLAB] (https://stackoverflow.com/questions/19283464/plotting-points-on-a-map-in-matlab – anquegi

Répondre

0

Les coordonnées sur carte du monde ne sont pas lon/lat. Pour projeter une image sur une carte du monde, vous devez créer une matrice ou un vecteur de référence et utiliser geoshow. Le vecteur de référence est en forme [cells (pixels)/degree northern_latitude_limit western_longitude_limit]. Vous pouvez utiliser vec2mtx pour convertir latitude-longitude à la grille régulière de données, construire faisant référence objet avec par exemple georefcells, ou même essayer correspondant à l'image de la carte manuellement (1, 2, 3 approches, tous été plutôt laborieux)

+0

Merci, mais je ne suis pas sûr d'avoir ce que vous voulez dire . Comment peut-il être fait manuellement? Je pensais qu'il devait y avoir un moyen facile. – Aviad

+0

Pourriez-vous s'il vous plaît partager votre image M? – Gryphon

+0

Bien sûr. M est une matrice 200x200. Je vais éditer la question. – Aviad