imshow 在 Matlab 中有副作用吗?我该如何解决它们?
Does imshow have side effects in Matlab? And how can I resolve them?
我有两个轴,比如说 A1
和 A2
,在 A2
我有一张显示 imshow
的图像,在 A1
我显示与 imagesc
完全不同的内容,并且在使用 A2 时会产生不同的颜色结果。这是一些示例代码,可能是最短的示例:
a = zeros(1);
[b,bmap] = imread('F.bmp');
c = figure();
d = axes('Parent',c,'Position',[0,0,.5,1]);
e = axes('Parent',c,'Position',[.5,0,.5,1]);
axes(d);
imagesc(a);
pause();
axes(e);
imshow(b,bmap);
pause();
cla(d);
axes(d);
imagesc(a);
figure();
axes();
imagesc(a);
图片a显示b后显示不一样,换图显示正常。我该如何解决这个问题?
深入挖掘后,我认为这是因为提供地图,bmap
到 imshow
导致 figure.Colormap
值发生变化,因此可以通过键入 colormap default
在 imshow
命令之后。
我有两个轴,比如说 A1
和 A2
,在 A2
我有一张显示 imshow
的图像,在 A1
我显示与 imagesc
完全不同的内容,并且在使用 A2 时会产生不同的颜色结果。这是一些示例代码,可能是最短的示例:
a = zeros(1);
[b,bmap] = imread('F.bmp');
c = figure();
d = axes('Parent',c,'Position',[0,0,.5,1]);
e = axes('Parent',c,'Position',[.5,0,.5,1]);
axes(d);
imagesc(a);
pause();
axes(e);
imshow(b,bmap);
pause();
cla(d);
axes(d);
imagesc(a);
figure();
axes();
imagesc(a);
图片a显示b后显示不一样,换图显示正常。我该如何解决这个问题?
深入挖掘后,我认为这是因为提供地图,bmap
到 imshow
导致 figure.Colormap
值发生变化,因此可以通过键入 colormap default
在 imshow
命令之后。