I need to overlay a color map over a gray scale image with with the colorbar on the side.
조회 수: 25 (최근 30일)
이전 댓글 표시
I know there are similar post but I was unable to get them working. Attached is one matfile which contains 2 variables. I would like the colormap (Tmap) overlayed on a gray-scaled imaged on the variable 'x'. I also need all the zeroes not to show and and a colorbar shown on the side. Thanks for the assistance. You can see what I tried to do to get it working. Thanks for the help.
figure; imagesc(Tmap); colormap(jet); colorbar;
mask=Tmap>0;
figure; imshow(mask);
overlayImage=gray2ind(double(Tmap)/max(Tmap(:)),128);
overlayRGB=ind2rgb(overlayImage,jet(128));
x=im2double(x);
x=gray2ind(double(x)/max(x(:)),128);
vvv=[37 45]; %Set the colorbar axis
h=subimage(x);
set(h,'AlphaData',mask);
imagesc(Tmap);colormap(jet);colorbar; caxis(vvv);
hold on;
h=subimage(x);
set(h,'AlphaData',~mask)
h=gcf;
saveas(h,'NiceTherm')
댓글 수: 0
채택된 답변
Teja Muppirala
2017년 12월 20일
Something like this maybe?
figure;
ax1 = axes;
imagesc(x);
colormap(ax1,'gray');
ax2 = axes;
imagesc(ax2,Tmap,'alphadata',Tmap>0);
colormap(ax2,'jet');
caxis(ax2,[min(nonzeros(Tmap)) max(nonzeros(Tmap))]);
ax2.Visible = 'off';
linkprop([ax1 ax2],'Position');
colorbar;
댓글 수: 3
M J
2019년 8월 26일
Thank you, this works for me!
However, I fail to do this in a subplot. Can you help me with this?
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Red에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!