How can I change the color of an alphaShape object when using plot?

I have a 3-D object which I've converted to a very nice looking alphaShape object after getting the PixelIdxList and using ind2sub to get the coordinate of each voxel.
As awesome as they look, I really really need to change the color of some of the objects to anything other than the default green. Any idea on how to change the color?

 Accepted Answer

You can grab the handle to the patch objects making up the alpha shape as the output from plot and then change whatever properties of it you want:
data = randn(100,3);
as = alphaShape(data);
h = plot(as);
h.FaceColor = 'b';

1 Comment

I'm sorry to bother you!
What if you wanted my graphics to have a regular gradient of color, like a rainbow. Rather than a single color.It could be like this picture, or even more beautiful.
Looking forward to your reply.

Sign in to comment.

More Answers (1)

Not sure what you're doing, but a huge number of MATLAB graphics functions have a 'Color' input parameter. Check for that.

1 Comment

Thank you for your response. I did check for these features but it did not work in the traditional sense:
plot(shape,'Color',[0.5,0.5,0.5])
Instead, I went into the plot.m for alphaShapes, and noticed that there is a default color called "yellowgreen". I am able to copy-paste this entire file, save and rename it, and adjust the color to my liking. Using "hold on" and these steps, I should be able to achieve the desired result! Will update here if it works!

Sign in to comment.

Categories

Products

Community Treasure Hunt

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

Start Hunting!