Overlay polygon on geographic axes

조회 수: 43 (최근 30일)
Caroline Nowlan
Caroline Nowlan 2019년 10월 29일
댓글: Kurt 2024년 12월 18일
I would like to overlay a patch (filled polygon) on a geographic axis created using geoaxes. Is there any way to do this in R2019b? I have only found functions for plotting lines and symbols (geoplot, geoscatter).
This would be similar to patchm in the mapping toolbox.

채택된 답변

Subhadeep Koley
Subhadeep Koley 2019년 11월 1일
You can use the patch() function to achieve the same. Use the code below.
% Plot your Geo data here
latSeattle = 47.62;
lonSeattle = -122.33;
latAnchorage = 61.20;
lonAnchorage = -149.9;
gx = geoaxes;
geoplot(gx,latSeattle,lonSeattle);
geobasemap(gx,'landcover');
% Plot your Patch data here
ax2 = axes;
x = [0.25 0.6 0.6 0.25]; % Modify x coordinates of the polygon
y = [0.25 0.25 0.4 0.4]; % Modify y coordinates of the polygon
patch(ax2, x, y,'red','FaceAlpha',.4); % Modify patch color and transparency
axis([0 1 0 1]);
% Set ax2 visibility to 'off'
ax2.Visible = 'off';
ax2.XTick = [];
ax2.YTick = [];
geoPatch.png
  댓글 수: 3
Evan Bates
Evan Bates 2021년 1월 6일
Does not work with appdesigner.
Kurt
Kurt 2024년 12월 18일
This may work, but the patch has its own axis, and is not bound to the geoaxes object gx. You can grab it and move it around, independent of the background. They just happen to share the same frame, is all. Is there a way to bind these two objects so the patch won't move?

댓글을 달려면 로그인하십시오.

추가 답변 (1개)

Mike D.
Mike D. 2020년 2월 21일
What if you had (lat,lon) coordinates of the polygon you wanted to overlay? It looks like your x and y coordinates might be normalized coordinates?
  댓글 수: 4
Brad Onstott
Brad Onstott 2023년 2월 11일
Mike D: Good call! MATLAB 2022b does allow for an overlay consisting of user-defined Lat/Long coordinates.
Mike D.
Mike D. 2024년 4월 29일
Brad, are you saying the patch command now allows color filled polygons on geoaxes, or maybe after creating a polyshape with geopolyshape?

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Geographic Plots에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by