Doug's MATLAB Video Tutorials

Basics: Volume visualization: 9/9 Unifying example 8

Posted by Doug Hull,

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.

8 CommentsOldest to Newest

Hey Patrick and Doug, nice wrap-up work. is it possible to put a “wrap-up script” of all the examples (from video 1-9) so one can play with it — im too lazy to type ‘em up..


Hi Vick,

I’m working on getting the scripts I used to generate the presentation’s images on the File Exchange. Stay tuned…



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.


Dear Mr. Doug,

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’?

Please find a small portion of my database here: Thank you in advance for your time and effort to answer my questions.

Add A Comment

What is 2 + 7?

Preview: hide

These postings are the author's and don't necessarily represent the opinions of MathWorks.