Filter löschen
Filter löschen

How to create a 3D plot and split the values inside?

1 Ansicht (letzte 30 Tage)
Mariana
Mariana am 27 Feb. 2020
Kommentiert: darova am 16 Mär. 2020
Let´s say I have 3 coordinates, x,y and z
x goes from 0 to 120 with a step of one
y goes from 0 to 200 with a step of one
z goes from -25 to 25
The values inside vary, for example:
vector = ( x, y , z)
2.5 = ( 10, 22, -5 )
How can I later make divisions on this data based on the value of the vector or values inside the entire matrix.
Something like the image above.

Akzeptierte Antwort

darova
darova am 27 Feb. 2020
Use logical operations
id = vector > 2.5;
plot3(x(ix),y(ix),z(ix),'.r') % plot only points where vector > 2.5
  12 Kommentare
Mariana
Mariana am 16 Mär. 2020
How can I create a function based on the created plane?
darova
darova am 16 Mär. 2020
Can you be more specific? What plane? Show it on the picture

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Mariana
Mariana am 16 Mär. 2020
  1 Kommentar
darova
darova am 16 Mär. 2020
Sure. Use scatteredInterpolant
p = isosurface(X,Y,Z,val,2);
xx = p.vertices(:,1);
yy = p.vertices(:,2);
zz = p.vertices(:,3);
patch(p,'facecolor','b','edgecolor','none')
F = scatteredInterpolant(yy,zz,xx); % Function of a plane (Y,Z)
Example of using
x1 = F(90,4)
plot3(x1,90,4,'oy')
Result

Melden Sie sich an, um zu kommentieren.

Kategorien

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

Produkte


Version

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by