imshow — Display grayscale, binary, truecolor, or file-backed images.
imshow displays image data using MATLAB-familiar defaults. Numeric and logical 2-D arrays render as grayscale images, MxNx3 and MxNx4 arrays render as truecolor images, and filename inputs are decoded through RunMat's filesystem layer before display.
How imshow works
imshow(I)displays 2-D numeric data with grayscale limits[0, 1], matching MATLAB double-image defaults.imshow(BW)displays logical image data as black and white using[0, 1]limits.imshow(RGB)displays MxNx3 truecolor data directly.imshow(RGBA)displays MxNx4 truecolor data with alpha.imshow(I, [low high])displays grayscale image data using an explicit display range.imshow(I, [])auto-scales grayscale image data from finite minimum to finite maximum.imshow(filename)reads and decodes an image file, then displays it as truecolor data.
Examples
Display a simple grayscale image
row = 100;
col = 100;
rsm = ones(row, col);
imshow(rsm);Auto-scale a matrix for display
A = peaks(128);
imshow(A, []);Display truecolor RGB data
R = ones(64, 64);
G = zeros(64, 64);
B = zeros(64, 64);
RGB = cat(3, R, G, B);
imshow(RGB);Display an image file
imshow("photo.png");FAQ
What display range does imshow use for doubles?⌄
imshow(I) uses [0, 1] for floating-point grayscale data. Use imshow(I, []) when you want RunMat to scale the visible range from the data minimum to maximum.
Does imshow support uint8 and uint16 image defaults?⌄
File-backed images decode with byte pixel semantics. User-created integer image arrays currently depend on RunMat's broader numeric-class metadata model, so exact MATLAB class-dependent defaults for dense uint8/uint16 tensors are tracked separately.
How is imshow different from imagesc?⌄
imshow is for image display and uses grayscale or truecolor image defaults. imagesc is for scaled matrix visualization and maps data through the active colormap.
Related Plotting functions
Open-source implementation
Unlike proprietary runtimes, every RunMat function is open-source. Read exactly how imshow works, line by line, in Rust.
- View imshow.rs on GitHub
- Learn how the runtime works
- Found a bug? Open an issue with a minimal reproduction.
About RunMat
RunMat is an open-source runtime that executes MATLAB-syntax code — faster, on any GPU, with no license required.
- Simulations that took hours now take minutes. RunMat automatically optimizes your math for GPU execution on Apple, Nvidia, and AMD hardware. No code changes needed.
- Start running code in seconds. Open the browser sandbox or download a single binary. No license server, no IT ticket, no setup.
- A full development environment. GPU-accelerated 2D and 3D plotting, automatic versioning on every save, and a browser IDE you can share with a link.