# ProbabilityPlot

ProbabilityPlot[list]

generates a plot of the CDF of list against the CDF of a normal distribution.

ProbabilityPlot[dist]

generates a plot of the CDF of the distribution dist against the CDF of a normal distribution.

ProbabilityPlot[data,rdata]

generates a plot of the CDF of data against the CDF of rdata.

ProbabilityPlot[data,rdist]

generates a plot of the CDF of data against the CDF of symbolic distribution rdist.

ProbabilityPlot[{data1,data2,},ref]

generates a plot of the CDF of datai against the CDF of a reference distribution ref.

# Details and Options

• ProbabilityPlot is also known as normal probability plot in the one-argument form and probability-probability (P-P) plot in the two-argument form.
• ProbabilityPlot[data1,data2] works with datai being either a dataset of real values or a symbolic univariate distribution.
• For datasets list, empirical CDFs are used, and for symbolic distributions dist, exact CDFs are used.
• ProbabilityPlot[data,dist[θ1,]] with symbolic parameters θi is equivalent to ProbabilityPlot[data,EstimatedDistribution[data,dist[θ1,]]].
• Datasets can be given in the following forms:
•  {x1,x2,…} list of samples {Quantity[x1,unit],Quantity[x2,unit],…} samples with units <|k1e1,k2e2,…|> association of keys and samples WeightedData[…],EventData[…] augmented datasets TimeSeries[…],EventSeries[…],TemporalData[…] time series, event series, and temporal data w[{e1,e2,…},…] wrapper applied to a whole dataset w[{data1,data2,…}] wrapper applied to all datasets
• The form w[data] or w[dist] provides a wrapper w to be applied to the resulting graphics primitives.
• The following wrappers can be used:
•  Annotation[e,label] provide an annotation Button[e,action] define an action to execute when the element is clicked EventHandler[e,…] define a general event handler for the element Highlighted[fi,effect] dynamically highlight fi with an effect Highlighted[fi,Placed[effect,pos]] statically highlight fi with an effect at position pos Hyperlink[e,uri] make the element act as a hyperlink PopupWindow[e,cont] attach a popup window to the element StatusArea[e,label] display in the status area when the element is moused over Style[e,opts] show the element using the specified styles Tooltip[e,label] attach an arbitrary tooltip to the element
• ProbabilityPlot has the same options as Graphics, with the following additions and changes: [List of all options]
•  AspectRatio 1/GoldenRatio ratio of width to height ClippingStyle Automatic what to draw where curves are clipped ColorFunction Automatic how to determine the coloring of curves ColorFunctionScaling True whether to scale arguments to ColorFunction Filling None filling to insert under each curve FillingStyle Automatic style to use for filling Joined Automatic whether to join points Mesh None how many mesh points to draw on each curve MeshFunctions {#1&} how to determine the placement of mesh points MeshShading None how to shade regions between mesh points MeshStyle Automatic the style for mesh points Method Automatic methods to use PerformanceGoal \$PerformanceGoal aspects of performance to try to optimize PlotHighlighting Automatic highlighting effect for data PlotLegends None legends for data points PlotMarkers None markers to use to indicate each point for datasets PlotRange Automatic range of values to include PlotRangeClipping True whether to clip at the plot range PlotStyle Automatic graphics directives to specify the style for each object PlotTheme \$PlotTheme overall theme for the plot ReferenceLineStyle Automatic style for the reference line ScalingFunctions None how to scale individual coordinates WorkingPrecision MachinePrecision the precision used in internal computations for symbolic distributions
• With , the region between a dataset and reference line will be filled. By default, "stems" are used for datasets, and "solid" filling is used for symbolic distributions. The setting will force "solid" filling for datasets.
• The arguments supplied to functions in MeshFunctions and RegionFunction are , . Functions in ColorFunction are by default supplied with scaled versions of these arguments.
• The setting is equivalent to when comparing two distributions and otherwise.
• The setting uses a sequence of different plot styles for different lines.
• With the , no reference line will be drawn.
• Possible highlighting effects for Highlighted and PlotHighlighting include:
•  style highlight the indicated curve "Ball" highlight and label the indicated point in a curve "Dropline" highlight and label the indicated point in a curve with droplines to the axes "XSlice" highlight and label all points along a vertical slice "YSlice" highlight and label all points along a horizontal slice Placed[effect,pos] statically highlight the given position pos
• Highlight position specifications pos include:
•  x, {x} effect at {x,y} with y chosen automatically {x,y} effect at {x,y} {pos1,pos2,…} multiple positions posi
• Typical settings for PlotLegends include:
•  None no legend Automatic automatically determine legend {lbl1,lbl2,…} use lbl1, lbl2, … as legend labels Placed[lspec,…] specify placement for legend
• With ScalingFunctions->{sx,sy}, the coordinate is scaled using sx and the coordinate is scaled using sy.
• ## List of all options

•  AlignmentPoint Center the default point in the graphic to align with AspectRatio 1/GoldenRatio ratio of width to height Axes False whether to draw axes AxesLabel None axes labels AxesOrigin Automatic where axes should cross AxesStyle {} style specifications for the axes Background None background color for the plot BaselinePosition Automatic how to align with a surrounding text baseline BaseStyle {} base style specifications for the graphic ClippingStyle Automatic what to draw where curves are clipped ColorFunction Automatic how to determine the coloring of curves ColorFunctionScaling True whether to scale arguments to ColorFunction ContentSelectable Automatic whether to allow contents to be selected CoordinatesToolOptions Automatic detailed behavior of the coordinates tool Epilog {} primitives rendered after the main plot Filling None filling to insert under each curve FillingStyle Automatic style to use for filling FormatType TraditionalForm the default format type for text Frame False whether to put a frame around the plot FrameLabel None frame labels FrameStyle {} style specifications for the frame FrameTicks Automatic frame ticks FrameTicksStyle {} style specifications for frame ticks GridLines None grid lines to draw GridLinesStyle {} style specifications for grid lines ImageMargins 0. the margins to leave around the graphic ImagePadding All what extra padding to allow for labels etc. ImageSize Automatic the absolute size at which to render the graphic Joined Automatic whether to join points LabelStyle {} style specifications for labels Mesh None how many mesh points to draw on each curve MeshFunctions {#1&} how to determine the placement of mesh points MeshShading None how to shade regions between mesh points MeshStyle Automatic the style for mesh points Method Automatic methods to use PerformanceGoal \$PerformanceGoal aspects of performance to try to optimize PlotHighlighting Automatic highlighting effect for data PlotLabel None an overall label for the plot PlotLegends None legends for data points PlotMarkers None markers to use to indicate each point for datasets PlotRange Automatic range of values to include PlotRangeClipping True whether to clip at the plot range PlotRangePadding Automatic how much to pad the range of values PlotRegion Automatic the final display region to be filled PlotStyle Automatic graphics directives to specify the style for each object PlotTheme \$PlotTheme overall theme for the plot PreserveImageOptions Automatic whether to preserve image options when displaying new versions of the same graphic Prolog {} primitives rendered before the main plot ReferenceLineStyle Automatic style for the reference line RotateLabel True whether to rotate y labels on the frame ScalingFunctions None how to scale individual coordinates Ticks Automatic axes ticks TicksStyle {} style specifications for axes ticks WorkingPrecision MachinePrecision the precision used in internal computations for symbolic distributions

# Examples

open allclose all

## Basic Examples(4)

A normal probability plot compared to an estimated normal distribution:

Compare to the standard normal distribution:

A probability-probability plot of two datasets:

Plot several datasets with a legend:

## Scope(25)

### Data and Distributions(12)

ProbabilityPlot works with numeric data:

ProbabilityPlot works with symbolic distributions:

Use multiple datasets and distributions:

The default reference distribution is the closest estimated NormalDistribution:

Specify data or distributions as the reference:

Reference distributions are estimated for each dataset:

Estimate specific reference distributions for numeric datasets:

Use all forms of built-in distributions:

Parametric:

Nonparametric:

Derived:

Plot values with units:

Plot the values from an association:

Plot data with weights:

Plot data from time series:

### Presentation(13)

Multiple datasets are automatically colored to be distinct:

Provide explicit styling to different sets:

Include legends for each dataset:

Use specific styles for the reference line:

Turn off the reference line:

Provide an interactive Tooltip for the data:

Provide a specific tooltip for the data:

Create filled plots:

Use shapes to distinguish different datasets:

Use Joined to connect datasets with lines:

Use a theme with grid lines:

Data usually has interactive callouts showing the coordinates when you mouse over them:

Including specific wrappers or interactions such as tooltips turns off the interactive features:

Choose from multiple interactive highlighting effects:

## Options(66)

### ColorFunction(6)

ColorFunction requires at least one dataset to be Joined:

Color by scaled and coordinates:

Color with a named color scheme:

Fill to the reference line with the color used for the curve:

ColorFunction has higher priority than PlotStyle for coloring the curve:

Use Automatic in MeshShading to use ColorFunction:

### ColorFunctionScaling(2)

Color the line based on scaled value:

Color the line based on unscaled value:

### Filling(6)

Fill from the data to the reference line:

Use symbolic or explicit values for filling:

Points fill with stems:

Curves fill with solid regions:

Fill from the third dataset to the axis:

Fill between datasets using a particular style:

Use different styles above and below the filling level:

### FillingStyle(2)

Use different fill colors:

Use a transparent orange filling:

### Joined(2)

Datasets are not joined by default:

Join the points:

Symbolic distributions are joined by default:

### Mesh(3)

Use 20 mesh levels evenly spaced in the direction:

Use the mesh to divide the curve into deciles:

Specify Style and mesh levels in the direction:

### MeshFunctions(2)

Use a mesh evenly spaced in the and directions:

Show 5 mesh levels in the direction (red) and 10 in the direction (blue):

Alternate red and blue segments of equal width in the direction:

Use None to remove segments:

MeshShading can be used with PlotStyle:

MeshShading has higher priority than PlotStyle for styling the curve:

Use PlotStyle for some segments by setting MeshShading to Automatic:

MeshShading can be used with ColorFunction:

### MeshStyle(4)

Color the mesh the same color as the plot:

Use a red mesh in the direction:

Use a red mesh in the direction and a blue mesh in the direction:

Use big red mesh points in the direction:

### PlotHighlighting(8)

Plots have interactive coordinate callouts with the default setting :

Use to disable the highlighting for the entire plot:

Move the mouse over the curve to highlight it with a ball and label:

Move the mouse over the curve to highlight it with a label and droplines to the axes:

Move the mouse over the plot to highlight it with a slice showing values corresponding to the position:

Move the mouse over the plot to highlight it with a slice showing values corresponding to the position:

Use a component that shows the points on the dataset closest to the position of the mouse cursor:

Specify the style for the points:

Use a component that shows the coordinates on the dataset closest to the mouse cursor:

Use Callout options to change the appearance of the label:

Combine components to create a custom effect:

### PlotLegends(7)

By default, no legends are used:

Generate a legend using labels:

Generate a legend using placeholders:

Legends use the same styles as the plot:

Use Placed to specify the legend placement:

Place the legend inside the plot:

Use LineLegend to change the legend appearance:

### PlotMarkers(7)

ProbabilityPlot normally uses distinct colors to distinguish different sets of data:

Automatically use colors and shapes to distinguish sets of data:

Use shapes only:

Change the size of the default plot markers:

Use arbitrary text for plot markers:

Use explicit graphics for plot markers:

Use the same symbol for all the sets of data:

### PlotStyle(3)

Use different style directives:

By default, different styles are chosen for multiple curves:

Explicitly specify the style for different curves:

### PlotTheme(2)

Use a theme with grid lines:

Use a theme with high-contrast colors:

Turn off the grid lines:

### ReferenceLineStyle(4)

ReferenceLineStyle by default uses a Dotted form of PlotStyle:

Draw a dotted red reference line:

Draw a solid red reference line:

Use None to turn off the reference line:

ReferenceLineStyle can be combined with PlotStyle:

### ScalingFunctions(2)

Data is normally shown on linear scales:

Plot the data on a log-scaled axis:

## Applications(3)

KolmogorovSmirnovTest can be used to create a measure that quantifies the behavior in ProbabilityPlot. The KolmogorovSmirnov test statistic is equivalent to the maximum vertical distance between a point in the plot and the reference line:

The -value is larger when the points are closer to the reference line:

A -test for location assumes that the data was drawn from a NormalDistribution. If this assumption does not hold, a nonparametric test such as a signed-rank test is more appropriate. Suppose one wants to test for a location parameter of zero using the following data:

The plot suggests that the tails of the distribution are quite heavy. A SignedRankTest for location is more appropriate than the TTest:

Compare two time slices for a random process:

## Properties & Relations(8)

With no second argument, data is compared against an estimated normal distribution:

QuantilePlot compares quantiles for the data:

ProbabilityScalePlot scales the axes so that points from distributions are on a straight line:

BoxWhiskerChart and DistributionChart can be used to visualize the distribution of data:

SmoothHistogram and Histogram can be used to visualize the distribution of data:

DiscretePlot can be used to visualize the discrete distributions:

Use ListPlot to see the data:

ProbabilityPlot ignores time stamps when input is a TimeSeries:

Wolfram Research (2010), ProbabilityPlot, Wolfram Language function, https://reference.wolfram.com/language/ref/ProbabilityPlot.html (updated 2023).

#### Text

Wolfram Research (2010), ProbabilityPlot, Wolfram Language function, https://reference.wolfram.com/language/ref/ProbabilityPlot.html (updated 2023).

#### CMS

Wolfram Language. 2010. "ProbabilityPlot." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2023. https://reference.wolfram.com/language/ref/ProbabilityPlot.html.

#### APA

Wolfram Language. (2010). ProbabilityPlot. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/ProbabilityPlot.html

#### BibTeX

@misc{reference.wolfram_2024_probabilityplot, author="Wolfram Research", title="{ProbabilityPlot}", year="2023", howpublished="\url{https://reference.wolfram.com/language/ref/ProbabilityPlot.html}", note=[Accessed: 14-June-2024 ]}

#### BibLaTeX

@online{reference.wolfram_2024_probabilityplot, organization={Wolfram Research}, title={ProbabilityPlot}, year={2023}, url={https://reference.wolfram.com/language/ref/ProbabilityPlot.html}, note=[Accessed: 14-June-2024 ]}