showing the histogram in UIAxes_2 And not separately in the application

1 view (last 30 days)
my code:
global a;
global input;
input=im2gray(a);
imhist(input);
imshow(input,'Parent',app.UIAxes_2);

Accepted Answer

Walter Roberson
Walter Roberson on 17 Dec 2022
imhist() does not have any possibility of passing in an an axes.
You will need to use the form of imhist() with outputs, and then draw the results. Something like
a = app.a;
app.gray_a = im2gray(a);
[counts, locations] = imhist(app.gray_a);
imshow(app.gray_a, 'Parent', app.UIAxes_2);
hold(app.UIAxes_2, 'on');
bar(locations, counts, 'Parent', app.UIAxes_2);
hold(app.UIAxes_2, 'off');
Notice the lack of global variables. Using global variables in App Designer is most often... misguided...

More Answers (0)

Products


Release

R2022b

Community Treasure Hunt

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

Start Hunting!