如何在MatlabGUI中将绘制的直方图显示为轴?
我想绘制柱状图并将其显示在轴上。轴位于一个UI面板中。 如何在轴上显示直方图 这是我的密码。它只是在一个新窗口中显示绘制的直方图如何在MatlabGUI中将绘制的直方图显示为轴?,matlab,user-interface,histogram,axes,Matlab,User Interface,Histogram,Axes,我想绘制柱状图并将其显示在轴上。轴位于一个UI面板中。 如何在轴上显示直方图 这是我的密码。它只是在一个新窗口中显示绘制的直方图 fontSize = 20; [pixelCount_Merah grayLevels_Merah] = imhist(Merah); %subplot(2, 2, 2); bar(pixelCount_Merah, 'r'); title('Histogram of Merah', 'Fontsize', fontSize); xlim([0 grayLevels
fontSize = 20;
[pixelCount_Merah grayLevels_Merah] = imhist(Merah);
%subplot(2, 2, 2);
bar(pixelCount_Merah, 'r');
title('Histogram of Merah', 'Fontsize', fontSize);
xlim([0 grayLevels_Merah(end)]); % Scale x axis manually.
任何建议???在调用imhist
函数之前使用set(figure\u handle,'CurrentAxes',axes\u handle)
,其中figure\u handle
是GUI中图形的句柄,axes\u handle
是GUI中轴的句柄
编辑
我在那里走得有点太快了。正如Hugh Nolan所指出的,您需要将轴句柄用于感兴趣的轴,然后只需使用正确的轴句柄调用bar
函数即可,例如:
bar(axes_handle,pixelCount_Merah, 'r');
如果在创建时返回轴控制柄,如下所示:
%... creating a uipanel somewhere here
h = axes(); % make axes in uipanel
然后你可以用
axes(h);
在使用bar
打印到这些轴之前
如果没有可用的轴控制柄,可以使用findall
命令来查找它,只要您只创建了一组轴:
h=findall(0,'type','axes');
如果您的工作区中有多组轴,您可以尝试通过使用上述命令查找所有轴,然后查找其父级为uipanel的轴来进行筛选