How do I plot points over a topographic map?

Illustration
riya_singh - 2022-01-29T11:20:30+00:00
Question: How do I plot points over a topographic map?

I have plotted a secton of the globe using ETOPO data. I want to plot points onto this surface, but the following "geoshow" command does not work. Does anyone know how to plot like this?   Thanks!   ax = worldmap([20 50],[-130 -65]);   mstruct = gcm;   latlim = [20 50];   lonlim = [-130 -65];   [Z, refvec] = etopo('etopo1_ice_c.flt', 1, latlim, lonlim);   load coast   geoshow(Z, refvec, 'DisplayType', 'surface');   hold on;   %Plot Stations   A = load('Stations.txt');   for ii=1:length(A)     geoshow(A(ii,1),A(ii,2),'Marker','^','MarkerEdgeColor','k','Markersize',4); hold on; end  

Expert Answer

Profile picture of Prashant Kumar Prashant Kumar answered . 2025-11-20

The issue is that when you use display type 'surface' you get a 3D surface. The markers are plotted with Z=0, so they end up hidden. The simplest solution is to use display type 'texturemap'.

geoshow(Z, refvec, 'DisplayType', 'texturemap');

Alternatively, you can give the markers a Z value large enough for them to appear above the surface.

geoshow(40:45, -80:-75, 'DisplayType', 'point', 'Marker', '^', ...
    'MarkerEdgeColor','k','Markersize',4, 'Zdata', 10000*ones(6,1))

 


Not satisfied with the answer ?? ASK NOW

Get a Free Consultation or a Sample Assignment Review!