How to get Map Frame on the Top of other drawn objects
Show older comments
I am using the mapping toolbox to draw a number of patchm objects. Unfortunately , there are a number of places where the edges of the patch cross the map frame that is drawn around the map boundary. Is there a way to make the map frame on top? I have tried the following with no luck:
-----BEGIN CODE BLOCK-----
latlim = [32 33];
lonlim = [-118 -117];
map = usamap(latlim, lonlim);
setm(map, 'MapProjection', 'Mercator');
setm(map, 'Grid', 'off');
setm(map, 'FLineWidth', 5);
plotm([1 1]*mean(latlim), lonlim + [0.001 0], '-r', 'LineWidth', 5);
uistack(handlem('Frame'), 'top');
-----END CODE BLOCK-----
In the example here I have inflated the width of the lines to highlight the effect. Thanks for any help.
Justace
4 Comments
Rob Comer
on 16 Jul 2013
It was a good idea to try uistack:
uistack(handlem('Frame'), 'top');
but because the frame is placed in the z == -1 plane by default, you have to change it its ZData to pull it upward. This should work:
zdatam(handlem('Frame'),1)
Justace Clutter
on 16 Jul 2013
Justace Clutter
on 16 Jul 2013
Rob Comer
on 17 Jul 2013
Oops, I typed my answer into the comment field -- that's why you couldn't just mark it answered.
Accepted Answer
More Answers (0)
Categories
Find more on Vector and Raster Map Display in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!