Do the isosurfaces merely indicate a single value or do they contain information on all the value above the threshold?

4 次查看(过去 30 天)
When I use the isosurface command with a specific value (say corresponding to 95th percentile of my data), I am interesting in viewing the regions that correspond to values equal to and greater than the 95th percentile. My question is: Using Matlab's default isosurface return (see below for portion of code), is the surface just equal to the 95th percentile? If I want Matlab to plot all the regions above the 95th percentile threshold, should I plot multiple isosurfaces of 95th, 96th...99th percentiles?
isovalue = prctile(sgs(:),95);
p = patch(isosurface(x,y,z,sgs,isovalue));
p.FaceColor = 'magenta';
p.EdgeColor = 'none';
  4 个评论
John D'Errico
John D'Errico 2019-9-17
An iso-surface represents that surface where the value (here a percentile) is equal to the designated value. So if it is the 95% level, then that is what the surface represents, and nothing else.
Is it generally a truism that stuff on one side of that percentile will be above, and stuff on the other side will be below? Well, yes. Can I create a scenario where that is not true? Well, yes, I am confidant in my ability to do so. But typically, one would say the iso-surface will USUALLY represent the boundary of the region that you are interested in. Worse, the iso-surface does not even indicate on which side of the surface the part you care about lies.
saipb
saipb 2019-9-17
John,
I understand that there are different options and I certainly do not intend to question your ability to create different scenarios. I am trying to understand what the default option in Matlab is if I write the following code:
pile = 95;
isovalue = prctile(w(:),pile);
m = patch(isosurface(x,y,z,w,isovalue));
m.FaceColor = 'red';
m.EdgeColor = 'none';
m.FaceAlpha = '0.6';
And I see surfaces like:
Screen Shot 2019-09-17 at 3.44.59 PM.png

请先登录,再进行评论。

回答(1 个)

darova
darova 2019-9-19
You should plot multiple isosurfaces since isovalue should be a scalar
YOu can use for loop for that purpose

标签

产品

Community Treasure Hunt

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

Start Hunting!

Translated by