nantowhite
nantowhite - Convert a 2D matrix into an image with NaNs replaced by white
USAGE:
[im, clim] = nantowhite(cvals)
[im, clim] = nantowhite(cvals, clim)
[im, clim] = nantowhite(cvals, clim, cmap)
nantowhite takes in an N x M matrix of values ('cvals') and outputs an N x M x 3 uint8 image that can be displayed on screen using 'image'. This function replaces 'imagesc' for situations where there are NaN values in the input matrix. Instead of displaying 'NaN' values using the first value in the colormap, it displays them using white. You can replace what would originally be 'imagesc(cvals)' with 'image(nantowhite(cvals))'.
This function was created because alpha layers used to make 'NaN' values transparent were ignored when images were saved in a vector format.
See the demo code below to get 'colorbar' to show the correct limits when using this function.
INPUT:
cvals - A 2D matrix to be converted to an image. Any NaN values in the
matrix will be converted into white pixels in the output image.
clim - The minimum and maximum value on the colorscale used for
converting values in 'cvals' into colors in the output image.
An empty maxtix is ignored. Positive or negative 'inf' values
are replaced by the minimum or maximum value in 'cvals'.
cmap - The color map to use for conversion from 'cvals' into colors.
OUTPUT:
im - An N x M x 3 uint8 image matrix. [N,M] = size(cvals)
clim - The color limits used when converting values to color pixels.
DEMO:
[X,Y] = meshgrid(-2*pi:pi/16:2*pi);
cvals = 20*cos(X).*sin(Y);
cvals(1:20,1:20) = NaN;
cvals(randperm(numel(cvals),400)) = NaN;
Original Code:
figure; ax = axes();
imagesc(cvals,'Parent',ax);
colorbar('Peer',ax);
Modified Code:
figure; ax = axes();
[im, cl] = nantowhite(cvals);
image(im,'Parent',ax,'CDataMapping','scaled');
set(ax,'CLim',cl);
colorbar('Peer',ax);
Cite As
Benjamin Kraus (2024). nantowhite (https://www.mathworks.com/matlabcentral/fileexchange/41966-nantowhite), MATLAB Central File Exchange. Retrieved .
MATLAB Release Compatibility
Platform Compatibility
Windows macOS LinuxCategories
- Image Processing and Computer Vision > Image Processing Toolbox > Import, Export, and Conversion > Image Type Conversion >
Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Discover Live Editor
Create scripts with code, output, and formatted text in a single executable document.
Version | Published | Release Notes | |
---|---|---|---|
1.0.0.0 |