I'm having trouble displaying a hollow cylinder in Mathematica 9. A hollow cylinder looks like this:

hollow cylinder

I tried to use RevolutionPlot3D with a step function. It displays as what I want, but a collection of them in a Show[] is really buggy.

To prevent an X-Y problem, I'll say why I need this shape. I'm making a diagram to show how the integral of a volume of revolution can be approximated by a collection of hollow cylinders, like how the integral of a 1D function can be approximated by a collection of rectangles covering the undergraph.

I want my diagram to look something like this terrible drawing:

enter image description here

A Plot3D bounds the cylinders from above. The whole assembly is shown in a cross section, with one or two cylinders protruding out of the cross section to show what they are supposed to be.

If there is a better way to do this I'm open to that, but if there's some hidden CSG functions in Mathematica that would do the job I would be forever grateful to hear about them

  • $\begingroup$ Check out Sketch-type graphics with transparency and dashed hidden lines? $\endgroup$
    – user9660
    Commented Apr 25, 2015 at 8:30
  • 1
    $\begingroup$ This can be done with Show[{RegionPlot3D[ 2.4 < x^2 + y^2 < 4, {x, -2, 2}, {y, -2, 2}, {z, 0, 2}, Mesh -> None], RegionPlot3D[0.5 < x^2 + y^2 < 2, {x, -2, 2}, {y, -2, 2}, {z, 0, 2}, Mesh -> None]}] pretty easily :) $\endgroup$
    – Öskå
    Commented Apr 25, 2015 at 8:30
  • $\begingroup$ @Öskå make an answer out of it? !Mathematica graphics $\endgroup$
    – chris
    Commented Apr 25, 2015 at 10:26

1 Answer 1

myData = {{2, 1, #}, {1, 1, 0}} & /@ Table[1/(n + 2) + .2 RandomReal[], {n, 1, 15}];

SectorChart3D[myData, BoxRatios -> {1, 1, 1},
 ColorFunction -> Function[{x, y, z}, Hue[z]],
 ColorFunctionScaling -> False]

enter image description here

  • $\begingroup$ @blacklemon67 Great... glad to help. If you play around with the ColorFunction, you can likely highlight just one ring (red, say), as in your hand sketch. $\endgroup$ Commented Apr 25, 2015 at 11:14

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.