Extracting certain set of points from a 3D plot
13 views (last 30 days)
Show older comments
Hi team,
I'm a novice in MATLAB. I've prepared a 3D plot using MATLAB script shown below with D1, D2 and total power values in the X, Y and Z - axes respectively.
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/1652201/image.png)
Can a suggest a line of code or command where I give a range of power values and get a specific set of X and Y coordinate points (kinda like drawing an imaginary 3D plane in the plot and setting it at Z = some power and extracting all points that lie on that plane)? It would be really helpful.
0 Comments
Accepted Answer
Star Strider
on 26 Mar 2024
Example —
[X,Y] = ndgrid(-3:0.1:3);
f = @(x,y) exp(-(x.^2+y.^2*3)*0.75);
Z = f(X,Y);
PowerVal = 0.41254;
figure
surf(X, Y, Z)
hold on
[c,h] = contour3(X, Y, Z, [1 1]*PowerVal, '-r', 'LineWidth',3);
hold off
colormap(turbo)
xv = c(1,2:end);
yv = c(2,2:end);
figure
plot(xv, yv)
grid
axis('equal')
axis('padded')
title("(X,Y) Coordinates At Power Value "+PowerVal)
I use contour3 here to draw the red line at the chosen level, to illustrate the idea. The contour functions only return the surface coordinates.
.
5 Comments
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!