Isolate and group regions on a 3D plot based on sensitivy to a 4th parameter

3 visualizzazioni (ultimi 30 giorni)
I've got a reasonably large dataset roughyl 300,000x4. The first 3 columns relate to the x,y,z coordinates of a component in space and the 4th column is a rating based on certain factors and characteristics of the component at that x,y,z coordinate (i.e. temp, stress, strain, material, safety factors etc.) . Some example of the dataset rows are below:
X Y Z Rating
11.67 -5.70 341.21 24860692
-12.39 6.30 389.70 14831798
8.90 -3.12 368.10 17861810
13.80 -12.41 355.95 14962000
I want to identify the regions of the component which have a low rating and are at risk. I've found the individual nodes simply using the find function as below:
w = find(Rating <= 1E5);
u(:, 1) = X(w);
u(:, 2) = Y(w);
u(:, 3) = Z(w);
u(:, 4) = Rating(w);
When I plot this, it produces the following:
It is clear there are several different regions (about 9 or 10 maybe) of the component which have a low rating. I want to identify these grouped regions and output the x,y,z coordinates which enclose each of the regions. I'm guessing I somehow need to identify which x,y,z points are close together within the smaller dataset of low rating points but I'm not sure how to do this as the regions are not a set size and will vary when I run this code for different components so I need something generic.

Risposta accettata

darova
darova il 10 Apr 2019
  3 Commenti

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Stress and Strain in Help Center e File Exchange

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by