How to find the number of point inside the graph?

3 visualizaciones (últimos 30 días)
Ellina
Ellina el 20 de Mayo de 2015
Comentada: Andrei Bobrov el 21 de Mayo de 2015
Hello,
  • I have made a graph and inserted many random points.
  • I marked the point manually in orange color for points outside the graph and green color for points inside the graph
  • I wonder how can we calculate the number of points in green color automatically using only MATLAB code?
Thank you in advance

Respuestas (1)

Andrei Bobrov
Andrei Bobrov el 20 de Mayo de 2015
Editada: Andrei Bobrov el 20 de Mayo de 2015
x = [0,7, 18, 37,47,54,57.5,59,61.5,69,87,95,99,103,110]'/110; % Let this
y = [0, 15,43,53,42,20,7,0, 37, 61,56, 40.5, 24, 6, 0]'/61; % is arrays - your data
f = griddedInterpolant(x,y,'pchip'); % old MATLAB: pp = interp1(x,y,'pchip','pp');
% f = @(x)ppval(pp,x);
xx = rand(100,1);
yy = rand(100,1)*1.3; % points for check
t = f(xx) - yy > 0;
plot(0:.001:1,f(0:.001:1));grid on
hold on
plot(xx(t),yy(t),'g*');
plot(xx(~t),yy(~t),'r*');
  2 comentarios
Ellina
Ellina el 21 de Mayo de 2015
Thank you so much.
The logical code,t helps me a lot.
I already plotted the graph but I don't know how to count automatically the number of green point.
Still trying my best to code it.
Andrei Bobrov
Andrei Bobrov el 21 de Mayo de 2015
number of green point:
NG = sum(t);
or
NG = nnz(t);

Iniciar sesión para comentar.

Categorías

Más información sobre Directed Graphs en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by