This is documentation for Mathematica 8, which was
based on an earlier version of the Wolfram Language.

# MatrixPlot

 MatrixPlot[m] generates a plot that gives a visual representation of the values of elements in a matrix.
• MatrixPlot[m] by default arranges successive rows of m down the page and successive columns across, just as a matrix would normally be formatted.
• MatrixPlot by default displays zero values as white, with negative values tending to be bluish and positive values reddish.
 ClippingStyle Automatic how to show clipped values Frame True whether to draw a frame around the plot FrameTicks All what ticks to include on the frame MaxPlotPoints Automatic the maximum number of points to include
• PlotRange->r specifies that only those between -r and +r should be shown.
• With the default setting ColorFunctionScaling->True, scaling is done based on a mixture of relative value and ranking for each matrix element. The final scaled value always lies between 0 and 1, with scaled value 0.5 corresponding to matrix element value 0.
• With the default setting MaxPlotPoints, sufficiently large or sparse matrices are downsampled so that their structure is visible in the plot generated by MatrixPlot.
Plot a matrix as an array of colors:
Plot a matrix using only black and white:
Plot the structure of dense matrices:
Plot the structure of sparse matrices:
Plot a matrix as an array of colors:
 Out[1]=

Plot a matrix using only black and white:
 Out[1]=

Plot the structure of dense matrices:
 Out[1]=

Plot the structure of sparse matrices:
 Out[1]=
 Out[2]=
 Scope   (18)
Plot a dense matrix:
Plot a sparse matrix:
Plot a non-rectangular "matrix", with missing entries transparent:
Negative entries are shown in cool colors, positive entries in warm colors, and zeros in white:
Entries near zero are shown in a shade of gray; entries very close to zero may be shown in white:
Complex numbers are shown based on their real parts:
None is interpreted as a missing value and displayed using transparency:
Symbolic values other than None are shown in dark red:
Colors are shown darker for very sparse matrices to make entries more visible:
Show a matrix with irrational and arbitrary-precision entries:
Give explicit color directives to specify colors for individual cells:
Use a black and white color function to highlight the sparse structure of a matrix:
Use a custom color function with blue colors for negative values and red colors for positive values:
Use ColorRules to color different values:
Use both ColorRules and ColorFunction to color elements, giving priority to ColorRules:
Use Mesh and MeshStyle to provide an overlay mesh:
 Options   (37)
Make all cells square:
Use a different aspect ratio:
Background is normally visible only around the edges:
The background "shows through" whenever an explicit entry is None:
By default the clipped values are colored vibrant red and blue:
Use explicit colors for the clipped values:
Use None to indicate no style, showing the background in those cells:
Use an explicit color function:
Use a pure function as the color function:
Use a named color gradient from ColorData:
If the color function is undefined for some value, then a dark red is substituted:
In this case the color is defined for all the values:
For complex matrices the real part is used for the color function:
By default a nonlinear scaling of entries is used to differentiate values over a wide range:
With ColorFunctionScaling->False, entries are not scaled:
ColorFunctionScaling has no effect on ColorRules:
Specify color rules for explicit values or patterns:
Implement a "default color" by adding a rule for :
The array can contain symbolic values:
Use any patterns in ColorRules:
Rules are used in the order given:
ColorRules can be used together with ColorFunction and has higher priority:
Reverse the order of columns:
Do not use a frame:
Do not include frame ticks:
Frame ticks at specific values:
Frame ticks without a visible frame:
With a mesh included, Frame->True is required for frame ticks to be drawn:
Make the frame invisible:
By default, automatic methods are used to downsample large and/or sparse matrices:
Without downsampling, the entries are less visible:
Explicitly set downsampling values for MaxPlotPoints:
The visual appearance in the resulting plot is also affected by the choice of ColorFunction:
Insert mesh lines between all cells:
Insert 19 row mesh lines and 1 column mesh line:
Use a sequence of colors for the mesh lines:
Make the mesh pink:
Plot all elements:
Plot only elements with values from 0 to 1; clip the rest:
The first two entries in PlotRange specify the range of rows and columns to include:
 Applications   (3)
Plot a sparse matrix:
Zoom in to the top-left diagonal block:
Plot the imaginary parts of a discrete Fourier transform matrix:
Plot a table of values of five sine waves in random directions:
MatrixPlot colors negative entries with cool colors and positive entries with warm colors:
ArrayPlot uses gray scale:
MatrixPlot rescales the matrix entries to differentiate values over a wide range:
Without rescaling, fewer elements can be differentiated:
Use ReliefPlot for medical and geographic data:
Use ListDensityPlot for structured or unstructured data sampled from continuous densities:
Use GraphPlot for visualizing adjacency matrices:
Using MaxPlotPoints may result in artifacts not actually present in the original data.
With a small MaxPlotPoints option value, all entries become nonzero:
Entries very close to zero may be treated as zero:
Plot the Sin function at integer points:
New in 6