Filter löschen
Filter löschen

Plot cross section at particular value of x for mesh(x,y,z).

5 Ansichten (letzte 30 Tage)
V Patel
V Patel am 12 Apr. 2016
Kommentiert: Alka Panda am 26 Feb. 2021
I have a mesh plot mesh(x,y,z) where x,y and z are having 100 by 100 values. Now I want a cross section plot at a particular value of x. How to do this?

Akzeptierte Antwort

Star Strider
Star Strider am 12 Apr. 2016
You can easily adapt this to your data. I chose different lengths of the ‘x’ and ‘y’ vectors to demonstrate and trace the indexing of the matrices:
x = linspace(5, 10, 80); % Create Data
y = linspace(1, 5, 50); % Create Data
[X,Y] = meshgrid(x,y); % Create Data
Z = sin(X.^2) - cos(Y.^2); % Create Data
figure(1)
surf(X, Y, Z) % Surface Plot
grid on
X_idx = find(x >= 7.5, 1, 'first'); % Find Desired ‘X’ Value
figure(2)
plot(Y(:,X_idx), Z(:,X_idx)) % Plot At Desired ‘X’ Value
grid
  2 Kommentare
Denise Janer
Denise Janer am 9 Jan. 2021
Hi may I ask why you defined Z using that formula?
What if I have a mesh (x, y, z) where z is depth data? How can I make a cross section at any other points in the x and y axis?
Thanks.
Alka Panda
Alka Panda am 26 Feb. 2021
It was just an example, you can adapt Z to a function of your choice

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Line Plots finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by