0

引入后如何去除颜色条右侧的灰色空间?

在将颜色条添加到 gcf 空间之前,我使用 gca 来保存图像和徽标,因为一旦将颜色条添加到图形中,我需要它们的尺寸和比例纵横比不会改变。当我添加颜色条时,它位于 gca 的右侧。添加colorbar时出现额外空白的原因是因为我将窗口屏幕尺寸(gcf)设置为[16 9],这意味着gca和colorbar的宽度都会小于图形的屏幕尺寸(gcf )。我已经尝试了很多不同的方法来从 gcg 中裁剪 gca 和 colorbar,但是每次我尝试 gca 图像都会变形。

我在用:

backMap=imread(...);
mapSize=size(backMap);
image(backMap);
screenSize=[16 9]
screen ='verti';
set(gcf,'units','normalized','Position',[0 0 1 1]);

switch screen
    case 'verti'
        set(gca,'Position',[0 0 (mapSize(2)/mapSize(1))*(screenSize(2)/screenSize(1)) 1]);
    case 'horiz'
        set(gca,'Position',[0 0 1 (mapSize(1)/mapSize(2))*(screenSize(1)/screenSize(2))]);
    otherwise
        error ('not well defined screen');
end
h1=colormap;
h2=colorbar;

set(gca, 'XTick', [], 'YTick', []);
h4=get(h_bar,'position');


pos=get(gca,'position');
figm=get(gcf,'position');

set(gcf, 'position', [pos(1) pos(2), 1-(pos(3)+h4(3)) pos(4)])
fig1 =getframe(gcf);
imwrite(fig1.cdata, [outputFileName2 'x3.tiff']);
4

1 回答 1

0

如果您将案例“verti”更改为:

case 'verti'
    set(gca,'Position',[0.05 0 (mapSize(2)/mapSize(1))*(screenSize(2)/screenSize(1)) 1]);

并发表评论

set(gca, 'XTick', [], 'YTick', []);
%h4=get(h_bar,'position');


%pos=get(gca,'position');
%figm=get(gcf,'position');

%set(gcf, 'position', [pos(1) pos(2), 1-(pos(3)+h4(3)) pos(4)])
fig1 =getframe(gcf);
imwrite(fig1.cdata, [outputFileName2 'x3.tiff']);

你的形象看起来更好,但我不知道你最后需要什么。

于 2013-10-01T18:28:31.490 回答