在地图上绘图

时间:2014-08-03 20:12:42

标签: matlab map plot

我正在绘制轨迹,现在,我只有带有线条的数字,对应于我带来的LAT和LON列表。我如何将这些轨迹放在他们所在区域的地图上#39;重新使用LAT和LON作为地图上的限制?

figure
for d = 1:i
hold on
plot(LON(d,:),LAT(d,:))
end
hold off

A picture of one such trajectory plot.

1 个答案:

答案 0 :(得分:1)

以下代码需要 Matlab Mapping Toolbox

LAT = [30, 40, 60];
LON = [-130, -90, -60]

coast_border = load('coast')  % Load coastline from Matlabs dataset
ax = worldmap('world')  % Create map figure
setm(ax, 'MapLatLimit', [min(LAT), max(LAT)], 'MAPLonLimit', [min(LON), max(LON)])
plotm(coast_border.lat, coast_border.long, 'k')  % Ploat coastline
plotm(LAT, LON, 'r')

Output

请注意,如果要更改地图设置,则必须使用 setm 而不是设置

就个人而言,我更喜欢停用地图网格和标签,并将背景颜色设置为蓝色

setm(ax,'meridianLabel','off','ParallelLabel','off','grid','off','ffacecolor',[0.6, 0.6, 1])

并填补土地

patchm(coast_border_lat, coast_border.long, [0.5 0.5 0.5])