How do determine the maximum and minimum point form origin on a contour graph
49 views (last 30 days)
Show older comments
I have created a contour graph from the folloing code, where C_100030_alt173 is my raw data. I will return a contour plot with points containing (x, y, level). How do I find the max. and min. point from the origin (0,0). ie. how do i extract xy values for all points and do a simple (x^2+y^2)^1/2 calculation and identify the max. and min.
Thank you so much
x=(-1:1/512:1);
C_100030_alt173
c1P5_alt173=reshape(CON,[1025,1025]);
a=[0,0];
v1=[0.5,0.5];
v2=[0.11,0.11];
contour(x,x,c1P5_alt173,v1,EdgeColor="black");
hold on
contour(x,x,c1P5_alt173,v2,EdgeColor="blue");
0 Comments
Accepted Answer
Aquatris
on 8 Apr 2024
Moved: Fangjun Jiang
on 8 Apr 2024
Not sure exactly what you want but contour function can give you interpolated x-y positions for a specific level. From there you can use a simple calculation to find the max distance to origin for that spefic level.
Z = peaks;
% get x-y locations of points corresponding to desiredLevel
desiredLevel = 1.949;
p = contourc(Z,desiredLevel*[1 1]);
% remove x y positions outside of [0 50] range
p(:,p(1,:)>50|p(2,:)>50) = [];
% get max distance
dist = sqrt(p(1,:).^2+p(2,:).^2);
maxDistIdx = find(dist==max(dist));
% draw contour graph
[M,c] = contourf(Z);xlim([0 50]);ylim([0 50])
hold on
% draw each point for the desiredLevel and the largest distance for that level
plot(p(1,:),p(2,:),'rx',...
[0 p(1,maxDistIdx)],[0 p(2,maxDistIdx)],'r-','LineWidth',2)
hold off
More Answers (0)
See Also
Categories
Find more on 2-D and 3-D Plots in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!