MATLAB: How to get the same image as generated by imagesc using ind2rgb

colormapimage processingind2rgb

I am trying to convert a grayscale image with a colormap to an rgb image using ind2rgb but it loses most of the detail displayed by imagesc using the same colormap and input image.
An example is shown below
map=jet;
A=rand(500,500);
figure,imagesc(A), colormap(map)
A=uint8(256*A);
figure,imagesc(A), colormap jet
B=ind2rgb(A,map);
figure,imshow(B)
In the example above I want B to be the same as the image displayed by imagesc.
Many thanks in advance!

Best Answer

Try:
map=jet(256);