This short video is the final of a series of nine that talks about volume visualization. Patrick gave this talk internally to help technical support engineers understand capabilities of MATLAB for volume visualization.
I like his slow, clear, methodical presentation with great visualizations. It is the first time I have deeply understood some of the volume visualization techniques we have.
You have the ability to set transparency (alpha) on HG objects. The trick is getting the handle to them. Different functions hand back handles at different levels of granularity. You can use whatever algorithm you want to set the different transparency values (constant, or dependent on a function like you mention) are possible.
The more custom the design, the more you will be hunting around for handles and such though.
I saw your videos on – volume visualization as well as -surface plot on nonuniform data. Those were extremely helpful. However, I have a database as follows:
x(:,1) = longitude
y(:,2) = latitude
z(:,3) = depth
v(:,4) = toxic metal concentration
The data is irregularly spaced, and as you can see, all data are vector data. From your video, scatter3(x(:),y(:),z(:),, v(:)) — plots a nice 3D scatter plot with colored metal concentration. But when I want to get a slice out of it as– slice(x, y, z, v, , , 30) — it says ‘v’ has to be a 3D array. Since metal concentration is not a function of x, y, and z, it can’t be a 3D array. Moreover, I really don’t understand how ‘interpn’ work, actually I tried and failed. So my straight-forward questions to you:
1. Is there any way to make v (metal conc.) = a volume of data or 3D array so that I can get a slice or isosurface out of it?
2. If not, then how can I use the ‘interpn’ to get the ‘v’?