How to extract area using inpolygon

9 visualizzazioni (ultimi 30 giorni)
IMC
IMC il 23 Giu 2021
Modificato: IMC il 24 Giu 2021
Hello everyone,
I need to do analysis on just rectangular part of my figure. Therefore, I tried to extract that area using inpolygon. My data is lat = 406x270 and lon = 406x270. I have plotted temperature which is 2030x1354.
Using the code below:
xv= [104.61, 102.98, 109.37, 109.52];
yv = [19.93, 25.03, 25.01, 19.98];
in = inpolygon(lon,lat,xv,yv);
figure
plot(xv,yv) % polygon
axis equal
hold on
plot(lon(in),lat(in),'r+') % points inside
plot(lon(~in),lat(~in),'bo') % points outside
hold off
I just can't figure out what is wrong in my code. Kindly tell me what's wrong here? Thank you.

Risposta accettata

KSSV
KSSV il 23 Giu 2021
Check your polygon coordinates. They are not up to the mark as shown in the first figure.
xv= [104.61, 102.98, 109.37, 109.52];
yv = [19.93, 25.03, 25.01, 19.98];
patch(xv,yv,'r')
  2 Commenti
IMC
IMC il 23 Giu 2021
Thank you for your reply.
But I have one question here about this statement 'Check your polygon coordinates' . Does this mean I have not selected the coordinates correctly?

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Elementary Polygons in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by