How can I plot trajectories on top of a map?

17 visualizaciones (últimos 30 días)
Michael
Michael el 13 de Ag. de 2014
Respondida: Polina Vasilyeva el 12 de Feb. de 2018
I wish to plot different series of lat/lon values onto a map and connect together with a line (i.e. hurricane tracking).
How can I do this on Matlab?
  1 comentario
Salaheddin Hosseinzadeh
Salaheddin Hosseinzadeh el 13 de Ag. de 2014
please see matlab documentation or simply type these on matlab command line
doc plot
doc line
doc hold
Hope this helps.

Iniciar sesión para comentar.

Respuesta aceptada

Christopher Berry
Christopher Berry el 13 de Ag. de 2014
Editada: Christopher Berry el 13 de Ag. de 2014
The Mapping toolbox has a number of great functions to help out with exactly this type of thing.
If you just want the specific points you currently have as lat,lon to be translated into the map coordinates x,y,z use the function mfwdtran, like this:
[x,y,z] = mfwdtran(lat,lon,0)
Then you can use whatever method of displaying and connecting your points that you like.
Alternately, you can also use mapping specific functions, such as linem or plotm. Take a look at this example from the doc for linem:
axesm sinusoid; framem
linem([15; 0; -45; 15],[-100; 0; 100; 170],'r-')
Either way, if you also want to draw either rumb line tracks or great circle tracks connecting the locations, you can take advantage of the function track2 to generate additional lat,lon points to connect any two points. Here is the example from the doc that shows this pretty well:
% Set up the axes.
axesm('mercator','MapLatLimit',[30 50],'MapLonLimit',[-40 40])
% Calculate the great circle track.
[lattrkgc,lontrkgc] = track2(40,-35,40,35);
% Calculate the rhumb line track.
[lattrkrh,lontrkrh] = track2('rh',40,-35,40,35);
% Plot both tracks.
plotm(lattrkgc,lontrkgc,'g')
plotm(lattrkrh,lontrkrh,'r')
Basically, any plotting function in base MATLAB, just add m to the end of it and if it exists in the Mapping Toolbox, then it does basically the same thing except with lat,lon coordinates, instead of x,y,z coordinates.
Hope that helps.

Más respuestas (1)

Polina Vasilyeva
Polina Vasilyeva el 12 de Feb. de 2018
Excuse me, may be you know is it possible to plot this trajectories on the colour dependsing on the speed wind in every coordinate?

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by