Get values of the particular line from surf plot

3 visualizzazioni (ultimi 30 giorni)
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 ?

Risposta accettata

Konrad
Konrad il 3 Set 2021
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 Commenti
Konrad
Konrad il 3 Set 2021
Modificato: Konrad il 3 Set 2021
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 il 3 Set 2021
Thank you so much Konrad .The lines made was so user friendly and quick.

Accedi per commentare.

Più risposte (0)

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by