Get values of the particular line from surf plot

5 次查看(过去 30 天)
I'm intersted to get all the values of the line 2- curve - marked in figure
load('jj.mat');
A1 = jj;
figure
A1(A1>0.05) = NaN;
surf(A1);shading interp;view(2);
figure
contour(A1); shading interp; view(2)
figure
v = [0.045 0.055];
contour3(A1,v); shading interp; view(2)
How Shall I get only this lower curve in a separate figure and then get all the Y values ?

采纳的回答

Konrad
Konrad 2021-9-3
Hi Ramesh,
the contour3() function returns the contour matrix (see help) containing x- and y-coordinates of the contour. You can use these to extract the desired part of the contour:
figure
v = [0.045 0.055];
contMat = contour3(A1,v); shading interp; view(2)
idx = contMat(1,:)>60 & contMat(2,:) < 850;
contSubset = contMat(:,idx);
Now contSubset contains x coordinates of the marked part in the first row and y coordinates in the second row.
Best, Konrad
  3 个评论
Konrad
Konrad 2021-9-3
编辑:Konrad 2021-9-3
Try
figure;
plot(contSubset(1,:),contSubset(2,:),'.'); % 1st row of contSubset is used as x-coordinates and 2nd row as y-ccordinates
set(gca,'Xlim',[1 234],'YLim',[1 2643])
this should look like the region marked in your figure.
Ramesh Bala
Ramesh Bala 2021-9-3
Thank you so much Konrad .The lines made was so user friendly and quick.

请先登录,再进行评论。

更多回答(0 个)

产品

Community Treasure Hunt

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

Start Hunting!

Translated by