MATLAB boxplot 字型位置調整以及圖片儲存問題
阿新 • • 發佈:2019-02-16
boxplot,調整x軸的label字型大小方法:
text_h = findobj(gca,'Type','text');
set(text_h,'FontSize', 22);
但是調整過後,會發生字型上移,如下圖
需要用以下方法,移動x軸label,10是可以調整的數值,表示在y軸上下移動的程度:
yshift = get(text_h, 'Position'); % stop
yshift = cellfun(@(y) [y(1) y(2)-10 y(3)],yshift,'un',0); % set position
set(text_h, {'Position'}, yshift);
但此時如果另存為圖片,會發生移動過的x軸label重新回到原來位置的情況,這時候需要用如下命令:
ax = findobj(gcf,'type','axes'); % need stop here
for j=1:length(ax)
boxparent = getappdata(ax(j),'boxplothandle');
listeners = getappdata(boxparent,'boxlisteners');
% To disable the listener objects:
cellfun(@(x) set(x,'Enabled','off'), listeners)
% To delete:
% cellfun(@(x) delete(x), listeners)
end
這樣可以順利的儲存圖片。