plots the waveform of image.


plots the waveform of image in colorspace.


plots the waveform for the specified channel.

Details and Options

  • ImageWaveformPlot is typically used to evaluate and adjust the brightness or colors of an image or frames of a video.
  • In an image waveform, the columns corresponds to image columns, the rows correspond to the pixel levels and the intensity of a point corresponds to the count of pixels at that level.
  • Use ImageHistogram to compute the histogram of the whole image and use ImageVectorscopePlot to evaluate and adjust hue and saturation.
  • The following colorspace specifications can be given:
  • "RGB"red, green, blue (default)
    "CMYK"cyan, magenta, yellow, black
    "HSB"hue, saturation, brightness
    "XYZ"channels of the CIE color space
    "LAB"channels of the CIE color space
    "LCH"channels of the CIE color space
    "LUV"channels of the CIE color space
    Automaticchannels of the image color space
  • The channel specification can be one of the following:
  • "I"gray-level (intensity)
    "L"luminance channel of Lab
    "R","G","B"red, green, blue from RGB
    "C","M","Y","K"cyan, magenta, yellow, black from CMYK
    "H","S","V"hue, saturation, brightness (value) from HSB
    "Average"mean of all channels
    "A"alpha channel
  • For images with some transparency, the alpha channel is used as a weight for the corresponding pixel.
  • ImageWaveformPlot has the same options as Graphics, with the following additions and changes:
  • AspectRatio1/GoldenRatiothe default point in the graphic to align with
    FrameTruewhether to put a frame around the plot
    GridLinesAutomaticgrid lines to draw
    MaskingAllthe region of interest
    MaxPlotPointsAutomaticthe maximum number of samples to show
    PlotLayout"Overlaid"the layout to be used
    PlotRangeAutomaticrange of values to include
    ScalingFunctionsAutomatichow to scale the level counts
  • Possible settings for PlotLayout include:
  • "Column"waveform of channels in a column
    "Overlaid"overlaid waveforms of the channels
    "Row"waveform of channels in a row (RGB parade)


open allclose all

Basic Examples  (1)

Generate a waveform plot from an image:

Scope  (3)

Compute the default RGB waveform:

Compute the CMYK waveform:

Compute the waveform for a specific channel:

Options  (4)

Masking  (2)

By default, the whole image is processed:

Specify the region of interest using a mask:

If present, the alpha channel is used as a mask:

This is equivalent to using the image alpha channel as the mask:

When both transparency and a mask are present, the corresponding pixel values are multiplied:

PlotLayout  (1)

The default layout overlays all the channels:

Plot every channel sequentially (RGB parade):

Stack channels vertically:

ScalingFunctions  (1)

The pixel count is automatically rescaled for better viewing:

Do not rescale the count:

Use a custom scaling:

Wolfram Research (2020), ImageWaveformPlot, Wolfram Language function,


Wolfram Research (2020), ImageWaveformPlot, Wolfram Language function,


@misc{reference.wolfram_2020_imagewaveformplot, author="Wolfram Research", title="{ImageWaveformPlot}", year="2020", howpublished="\url{}", note=[Accessed: 16-January-2021 ]}


@online{reference.wolfram_2020_imagewaveformplot, organization={Wolfram Research}, title={ImageWaveformPlot}, year={2020}, url={}, note=[Accessed: 16-January-2021 ]}


Wolfram Language. 2020. "ImageWaveformPlot." Wolfram Language & System Documentation Center. Wolfram Research.


Wolfram Language. (2020). ImageWaveformPlot. Wolfram Language & System Documentation Center. Retrieved from