How can I save the final output in a matrix without manually save it on the image panel using patch?

2 views (last 30 days)
I have code like this:
x=[0 10 5];
y=[0 0 8.66];
patch(x,y,'white')
set(gca,'Color','k','xticklabel',[],'yticklabel',[])
daspect([1 1 1]);
xlim([-5 15])
ylim([-5 15])
How can I save the final output image in a matrix without manually save it on the popup image panel?
I tried to let 'p = patch(x,y,'white')' but it is not the final pop-up output window. Thanks so much!

Accepted Answer

Ameer Hamza
Ameer Hamza on 30 May 2020
Use getframe() to get the graphics as an image matrix
x=[0 10 5];
y=[0 0 8.66];
patch(x,y,'white')
set(gca,'Color','k','xticklabel',[],'yticklabel',[])
daspect([1 1 1]);
xlim([-5 15])
ylim([-5 15])
frame = getframe(gca);
img = frame.cdata;

More Answers (1)

Image Analyst
Image Analyst on 30 May 2020
Use exportgraphics() (introduced in r2020a). For example:
exportgraphics(gca,'myplot.jpg','Resolution',300)

Categories

Find more on Images in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!