'jet' countour plot over grayscale image
3 views (last 30 days)
Show older comments
How do I plot a grayscale image with a contourmap over it. The contourmap should have the 'jet' colormap. Simply adding cmap = [jet(32); gray(32)]; makes the contourmap gray. I have tried the methods mentioned in http://www.mathworks.se/support/solutions/en/data/1-GNRWEH/index.html, but none seem to be able to make the grayscale image only grayscale and the contourmap only jet.
0 Comments
Accepted Answer
Walter Roberson
on 13 Jun 2012
I suggest you use the File Exchange contribution "freezeColors" on the grayscale image.
0 Comments
More Answers (2)
DGM
on 22 Apr 2022
This is easier than everyone is making it. You can avoid the necessity for two colormaps by simply expanding the single-channel grayscale image such that it has three channels. At that point, image/imagesc/imshow will no longer try to represent it as a colormapped image, and you'll be free to use the axes colormap for the overlaid contour/surf/whatever object.
I answered a similar question requiring a semitransparent contourf plot overlaid on a grayscale image here:
But what if I actually want my grayscale base image to be represented in pseudocolor using some colormap other than gray()? Maybe you want your single-channel image represented with parula(), but you want the overlay to use jet(). That's only a minor complication. Instead of expanding the single-channel image by replication, expand it using ind2rgb() and the desired colormap. In either case, the end result is that the base image is RGB, so its display will be independent of the axes colormap.
0 Comments
See Also
Categories
Find more on Red in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!