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

12 views (last 30 days)
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

Sean de Wolski
Sean de Wolski on 27 Jan 2015
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
俊鹏 陈
俊鹏 陈 on 21 Jun 2022
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)

Image Analyst
Image Analyst on 27 Jan 2015
Not sure what you're doing, but a huge number of MATLAB graphics functions have a 'Color' input parameter. Check for that.
  1 Comment
Leonard
Leonard on 27 Jan 2015
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

Find more on Bounding Regions in Help Center and File Exchange

Products

Community Treasure Hunt

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

Start Hunting!