({{, (RefLink[ProbabilityScalePlot, paclet:ref/ProbabilityScalePlot])[{(Subscript[x, 1]),(Subscript[x, 2]),…}] 
generates a normal probability plot of the samples (Subscript[x, i]). }, {, (RefLink[ProbabilityScalePlot, paclet:ref/ProbabilityScalePlot])[{(Subscript[x, 1]),(Subscript[x, 2]),…},"dist"]
generates a probability plot scaled for the distribution "dist".}, {, (RefLink[ProbabilityScalePlot, paclet:ref/ProbabilityScalePlot])[{(Subscript[data, 1]),(Subscript[data, 2]),…},"dist"]
generates several scaled probability plots for (Subscript[data, 1]), (Subscript[data, 2]), ….}})

OpenersNotesSection(Spacer1)Details and Options

(RefLink[ProbabilityScalePlot, paclet:ref/ProbabilityScalePlot])[data,"dist"] uses distribution-specific scales so that if data follows the given distribution, the plot will lie on a straight line.

The following distribution-specific scales are supported:

The positions plotted correspond to {(Subscript[x, i]),(Subscript[y, i])} where (Subscript[y, i]) are uniform order statistics medians given by (RefLink[Quantile, paclet:ref/Quantile])[{(Subscript[x, 1]),(Subscript[x, 2]),…},((i-a)/(n+b))].

The data is scaled by distribution-specific transformations g((Subscript[x, i])) and h((Subscript[y, i])) given by:

Datasets can be given in the following forms:

The form w[data] provides a wrapper w to be applied to the resulting graphics primitives.

The following wrappers can be used:

(RefLink[ProbabilityScalePlot, paclet:ref/ProbabilityScalePlot]) has the same options as (RefLink[Graphics, paclet:ref/Graphics]), with the following additions and changes:

With (RefLink[Filling, paclet:ref/Filling])->(RefLink[Automatic, paclet:ref/Automatic]), 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 (RefLink[Joined, paclet:ref/Joined])->(RefLink[True, paclet:ref/True]) will force "solid" filling for datasets.

The arguments supplied to functions in (RefLink[MeshFunctions, paclet:ref/MeshFunctions]) and (RefLink[RegionFunction, paclet:ref/RegionFunction]) are x, y. Functions in (RefLink[ColorFunction, paclet:ref/ColorFunction]) are by default supplied with scaled versions of these arguments.

The setting (RefLink[PlotStyle, paclet:ref/PlotStyle])->(RefLink[Automatic, paclet:ref/Automatic]) uses a sequence of different plot styles for different lines.

With the (RefLink[ReferenceLineStyle, paclet:ref/ReferenceLineStyle])->(RefLink[None, paclet:ref/None]), no reference line will be drawn:

With (RefLink[ScalingFunctions, paclet:ref/ScalingFunctions])->{(Subscript[s, x]),(Subscript[s, y])}, the x coordinate is scaled using (Subscript[s, x]) and the y coordinate is scaled using (Subscript[s, y]).

OpenersPrimaryExamplesSection(Spacer1)Examples  (108)

OpenersExampleSection0(Spacer1)Basic Examples  (3)

A normal probability plot compared to an estimated normal distribution:

data=RandomVariate[NormalDistribution[1,2],100];

ProbabilityScalePlot[data,"Normal"]

A Weibull probability plot:

data1=RandomVariate[WeibullDistribution[2,3],100];

ProbabilityScalePlot[data1,"Weibull"]

Normal probability plot of several datasets with a legend:

data1=RandomVariate[NormalDistribution[2,3],100];
data2=RandomVariate[StudentTDistribution[4,2,3],200];

ProbabilityScalePlot[{data1,data2},"Normal",PlotLegends->{"one","two"}]

OpenersExampleSection1(Spacer1)Scope  (26)

OpenersExampleSubsection0(Spacer1)Data  (13)

(RefLink[ProbabilityScalePlot, paclet:ref/ProbabilityScalePlot]) works with numeric data:

ProbabilityScalePlot[RandomVariate[UniformDistribution[{0,1}],100]]

(RefLink[ProbabilityScalePlot, paclet:ref/ProbabilityScalePlot]) with multiple datasets:

data1=RandomVariate[NormalDistribution[1,2],100];
data2=RandomVariate[UniformDistribution[{10,20}],100];

ProbabilityScalePlot[{data1,data2}]

Normal probability plot:

data=RandomVariate[NormalDistribution[1,2],100];

ProbabilityScalePlot[data,"Normal"]

A Weibull probability plot:

data1=RandomVariate[WeibullDistribution[2,3],100];

ProbabilityScalePlot[data1,"Weibull"]

An exponential probability plot:

ProbabilityScalePlot[RandomVariate[ExponentialDistribution[1],1000],"Exponential"]

Lognormal probability plot:

ProbabilityScalePlot[RandomVariate[LogNormalDistribution[0,1],200],"LogNormal"]

Rayleigh probability plot:

ProbabilityScalePlot[RandomVariate[RayleighDistribution[1],200],"Rayleigh"]

Fréchet probability plot:

ProbabilityScalePlot[RandomVariate[FrechetDistribution[1,2],200],"Frechet",PlotRange->Automatic]

Gumbel probability plot:

ProbabilityScalePlot[RandomVariate[GumbelDistribution[1,2],200],"Gumbel"]

Plot values with units:

Short[data=EntityValue[EntityList[EntityClass["Country","Countries"]],"LifeExpectancy"]]

ProbabilityScalePlot[data]

Plot the values from an association:

ProbabilityScalePlot[<|"a"->2,"b"->3,"c"->5,"d"->7,"e"->11|>]

Plot data with weights:

data=WeightedData[RandomVariate[NormalDistribution[],100],Abs[RandomVariate[NormalDistribution[],100]]]

ProbabilityScalePlot[data]

Plot data from time series:

data=TimeSeries[RandomReal[1,50],{Automatic,Today}]

ProbabilityScalePlot[data]

OpenersExampleSubsection1(Spacer1)Presentation  (13)

Multiple datasets are automatically colored to be distinct:

data={RandomVariate[NormalDistribution[],100],RandomVariate[WeibullDistribution[1,2],100]};

ProbabilityScalePlot[data]

Provide explicit styling to different sets:

data={RandomVariate[NormalDistribution[],100],RandomVariate[WeibullDistribution[1,2],100]};

ProbabilityScalePlot[data,PlotStyle->{Blue,Red}]

Include legends for each dataset:

data={RandomVariate[NormalDistribution[],100],RandomVariate[WeibullDistribution[1,2],100]};

ProbabilityScalePlot[data,PlotLegends->{"one","two"}]

Use (RefLink[Legended, paclet:ref/Legended]) to provide a legend for a specific dataset:

normal=RandomVariate[NormalDistribution[],100];weibull1=RandomVariate[WeibullDistribution[1,2],100];weibull2=RandomVariate[WeibullDistribution[2,1],100];

ProbabilityScalePlot[{Legended[normal,"normal"],weibull1,weibull2}]

Add labels:

ProbabilityScalePlot[RandomVariate[UniformDistribution[{0,1}],100],FrameLabel->{"Theoretical Quantiles","Empirical Quantiles"},PlotLabel->"Probability Scale Plot",PlotStyle->Directive[PointSize[Medium],Purple]]

Use specific styles for the reference line:

ProbabilityScalePlot[Range[100],ReferenceLineStyle->Directive[Dashing[{}],Red]]

Turn off the reference line:

ProbabilityScalePlot[Range[100],ReferenceLineStyle->None]

Draw grid lines:

ProbabilityScalePlot[Range[100],GridLines->Automatic]

Provide an interactive (RefLink[Tooltip, paclet:ref/Tooltip]) for the data:

ProbabilityScalePlot[Tooltip[RandomVariate[UniformDistribution[{0,1}],100]],PlotStyle->Directive[PointSize[Medium],Orange]]

data = RandomVariate[UniformDistribution[{0,1}],100];

ProbabilityScalePlot[Tooltip[data,BoxWhiskerChart[data]],PlotStyle->Blue]

Create filled plots:

data1=RandomReal[NormalDistribution[100,400],200];
data2 =RandomReal[UniformDistribution[{5,400}],500];

ProbabilityScalePlot[{data1,data2},Filling->{1->{2}},FillingStyle->{Red,Blue},Joined->True]

Use shapes to distinguish different datasets:

ProbabilityScalePlot[{{1,2,3,5,8},{2,3,6,9,10},{4,5,7,10,12}},PlotMarkers->Automatic]

Use (RefLink[Joined, paclet:ref/Joined]) to connect datasets with lines:

ProbabilityScalePlot[{1,2,4,7,3,5,8,10,9},Joined->True,PlotStyle->Orange]

Use a theme to create a black-and-white plot:

ProbabilityScalePlot[{1,2,4,7,3,5,8,10,9},PlotTheme->"Monochrome"]

OpenersExampleSection2(Spacer1)Options  (69)

OpenersExampleSubsection2(Spacer1)Axes  (1)

Draw axes instead of a frame:

ProbabilityScalePlot[RandomVariate[NormalDistribution[],100],"Normal",Frame->False,Axes->True]

OpenersExampleSubsection3(Spacer1)AxesLabel  (1)

Label the axes:

ProbabilityScalePlot[RandomVariate[NormalDistribution[],100],"Normal",AxesLabel->{"Empirical Data", "Theoretical Quantiles"},Axes->True, Frame->False]

OpenersExampleSubsection4(Spacer1)ClippingStyle  (4)

Omit clipped regions of the plot:

ProbabilityScalePlot[RandomVariate[LogNormalDistribution[0,1],100],"Normal",PlotRange->{10,90},Joined->True,ClippingStyle->None]

Show the clipped regions like the rest of the curve:

ProbabilityScalePlot[RandomVariate[LogNormalDistribution[0,1],100],"Normal",PlotRange->{10,90},Joined->True,ClippingStyle->Automatic,PlotStyle->Thick]

Show the clipped regions with red lines:

ProbabilityScalePlot[RandomVariate[LogNormalDistribution[0,1],100],"Normal",PlotRange->{10,90},Joined->True,ClippingStyle->Red]

Show the clipped regions as red and thick:

ProbabilityScalePlot[RandomVariate[LogNormalDistribution[0,1],100],"Normal",PlotRange->{10,90},Joined->True,ClippingStyle->Directive[Red,Thick]]

OpenersExampleSubsection5(Spacer1)ColorFunction  (6)

(RefLink[ColorFunction, paclet:ref/ColorFunction]) requires at least one dataset to be (RefLink[Joined, paclet:ref/Joined]):

{ProbabilityScalePlot[Range[0,1,0.025],"Normal",ColorFunction->"Rainbow"],ProbabilityScalePlot[Range[0,1,0.025],"Normal",ColorFunction->"Rainbow",Joined->True]}

Color by scaled x and y coordinates:

Table[ProbabilityScalePlot[Range[0,1,0.025],"Normal",Joined->True,ColorFunction->Function[{x,y},f],PlotLabel->f,PlotStyle->Thick],{f,{Hue[x],Hue[y]}}]

Color with a named color scheme:

ProbabilityScalePlot[Range[0,1,0.025],"Normal",Joined->True,ColorFunction->"DarkRainbow"]

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

ProbabilityScalePlot[Range[0,1,0.025],"Normal",Joined->True,ColorFunction->Function[{x,y},Hue[x]],Filling->Automatic]

(RefLink[ColorFunction, paclet:ref/ColorFunction]) has higher priority than (RefLink[PlotStyle, paclet:ref/PlotStyle]) for coloring the curve:

ProbabilityScalePlot[Range[0,1,0.025],"Normal",Joined->True,ColorFunction->"DarkRainbow",PlotStyle->Directive[Red,Thick]]

Use (RefLink[Automatic, paclet:ref/Automatic]) in (RefLink[MeshShading, paclet:ref/MeshShading]) to use (RefLink[ColorFunction, paclet:ref/ColorFunction]):

ProbabilityScalePlot[Range[0,1,0.025],"Normal",Joined->True,ColorFunction->"Rainbow",PlotStyle->Directive[Red,Thick],Mesh->9,MeshShading->{Automatic,Black},MeshStyle->None]

OpenersExampleSubsection6(Spacer1)ColorFunctionScaling  (2)

Color the line based on scaled y value:

ProbabilityScalePlot[Range[0,1,0.025],"Normal",Joined->True,ColorFunction->Function[{x,y},Hue[y]],PlotStyle->Thick, ColorFunctionScaling->True]

Color the line based on unscaled y value:

ProbabilityScalePlot[Range[0,1,0.025],"Normal",Joined->True,ColorFunction->Function[{x,y},Hue[y]],PlotStyle->Thick, ColorFunctionScaling->False]

OpenersExampleSubsection7(Spacer1)Filling  (7)

Fill from data to the reference line:

ProbabilityScalePlot[RandomVariate[ParetoDistribution[1,2],50],Filling->Automatic,Joined->True]

Use symbolic or explicit values for filling:

Table[ProbabilityScalePlot[RandomVariate[ParetoDistribution[1,2],50],"Normal",Filling->c],{c,{Top,Bottom,Axis,50}}]

Points fill with stems:

ProbabilityScalePlot[RandomVariate[ParetoDistribution[1,2],50],Filling->Automatic]

Curves fill with solid regions:

ProbabilityScalePlot[RandomVariate[ParetoDistribution[1,2],50],Filling->Automatic,Joined->True]

Fill from the third dataset to the bottom:

ProbabilityScalePlot[{RandomVariate[NormalDistribution[],14],RandomVariate[PoissonDistribution[1],10],RandomVariate[WeibullDistribution[2,2],100]},"Normal",Filling->{3->Bottom}]

Fill between datasets using a particular style:

ProbabilityScalePlot[{RandomVariate[WeibullDistribution[1,2],100],RandomVariate[WeibullDistribution[2,2],100]},"Normal",Joined->True,Filling->{1->{{2},Directive[Orange,Dashed]}}]

Use different styles above and below the filling level:

ProbabilityScalePlot[{RandomVariate[WeibullDistribution[1,2],100],RandomVariate[WeibullDistribution[2,2],100]},"Normal",Joined->True,Filling->{1->{{2},{Yellow,Red}}}]

Filling only applies where the datasets overlap:

ProbabilityScalePlot[{RandomVariate[WeibullDistribution[1,2],100],RandomVariate[WeibullDistribution[2,2],100]},"Normal",Joined->True,Filling->{1->{{2},Red}}]

OpenersExampleSubsection8(Spacer1)FillingStyle  (2)

Use different fill colors:

Table[ProbabilityScalePlot[{RandomVariate[ParetoDistribution[1,10],100]},"Normal",Joined->True,Filling->Automatic,FillingStyle->c],{c,{Red,Green,Blue,Yellow}}]

Fill with transparent orange regions:

ProbabilityScalePlot[Table[RandomVariate[ParetoDistribution[x,4],100],{x,1,2,1}],"Normal",Joined->True,Filling->Bottom,FillingStyle->Directive[Opacity[0.5],Orange]]

OpenersExampleSubsection9(Spacer1)GridLines  (1)

Use automatically computed grid lines:

ProbabilityScalePlot[RandomVariate[WeibullDistribution[2,2],100],"Weibull",GridLines->Automatic]

OpenersExampleSubsection10(Spacer1)GridLinesStyle  (1)

Use light gray grid lines:

ProbabilityScalePlot[RandomVariate[WeibullDistribution[2,2],100],"Weibull",GridLines->Automatic,GridLinesStyle->LightGray]

OpenersExampleSubsection11(Spacer1)Joined  (1)

Datasets are not joined by default:

ProbabilityScalePlot[RandomVariate[NormalDistribution[],100]]

Join the points:

ProbabilityScalePlot[RandomVariate[NormalDistribution[],100],Joined->True]

OpenersExampleSubsection12(Spacer1)Mesh  (4)

Use 20 mesh levels evenly spaced in the x direction:

ProbabilityScalePlot[RandomVariate[NormalDistribution[],100],"Normal",Joined->True,Mesh->20]

Use the mesh to divide the curve into deciles:

data=RandomVariate[UniformDistribution[{1,10}],100];

ProbabilityScalePlot[data,Joined->True,Mesh->{Quantile[data,Range[0.1,0.9,0.1]]}]

Use an explicit list of values for the mesh:

ProbabilityScalePlot[RandomVariate[UniformDistribution[{1,10}],100],Joined->True,Mesh->{Range[0,12,2]},MeshStyle->PointSize[Medium]]

Specify mesh positions and styles:

ProbabilityScalePlot[RandomVariate[UniformDistribution[{0,1}],100],Joined->True,Mesh->{Table[{x,Hue[x]},{x,0.,1,.2}]}]

OpenersExampleSubsection13(Spacer1)MeshFunctions  (2)

Use a mesh evenly spaced in the x and y directions:

Table[ProbabilityScalePlot[{RandomVariate[ParetoDistribution[1,10],100]},"Normal",Joined->True,MeshFunctions->{Function[{x,y},Evaluate[f]]},Mesh->9,PlotLabel->f],{f,{x,y}}]

Show five mesh levels in the x direction (red) and 10 in the y direction (blue):

ProbabilityScalePlot[{RandomVariate[ParetoDistribution[1,10],100]},"Normal",Joined->True,Mesh->{5,10},MeshFunctions->{#1&,#2&},MeshStyle->{Directive[PointSize[Medium],Red],Blue}]

OpenersExampleSubsection14(Spacer1)MeshShading  (6)

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

ProbabilityScalePlot[RandomVariate[NormalDistribution[],100],"Normal",Joined->True,Mesh->10,MeshShading->{Red,Blue}]

Use (RefLink[None, paclet:ref/None]) to remove segments:

ProbabilityScalePlot[RandomVariate[NormalDistribution[],100],"Normal",Joined->True,Mesh->10,MeshShading->{Red,None}]

(RefLink[MeshShading, paclet:ref/MeshShading]) can be used with (RefLink[PlotStyle, paclet:ref/PlotStyle]):

ProbabilityScalePlot[RandomVariate[NormalDistribution[],100],"Normal",Joined->True,Mesh->10,PlotStyle->Thick,MeshFunctions->{#1&},MeshShading->{Red,Blue}]

(RefLink[MeshShading, paclet:ref/MeshShading]) has higher priority than (RefLink[PlotStyle, paclet:ref/PlotStyle]) for styling the curve:

ProbabilityScalePlot[RandomVariate[NormalDistribution[],100],"Normal",Joined->True,Mesh->10,PlotStyle->Black,MeshFunctions->{#1&},MeshShading->{Red,Blue}]

Use the (RefLink[PlotStyle, paclet:ref/PlotStyle]) for some segments by setting (RefLink[MeshShading, paclet:ref/MeshShading]) to (RefLink[Automatic, paclet:ref/Automatic]):

ProbabilityScalePlot[RandomVariate[NormalDistribution[],100],"Normal",Joined->True,Mesh->10,PlotStyle->Directive[Thick,Yellow],MeshFunctions->{#1&},MeshShading->{Red,Automatic}]

(RefLink[MeshShading, paclet:ref/MeshShading]) can be used with (RefLink[ColorFunction, paclet:ref/ColorFunction]):

ProbabilityScalePlot[RandomVariate[NormalDistribution[],100],"Normal",Joined->True,Mesh->10,PlotStyle->Thick,MeshFunctions->{#1&},MeshShading->{Black,Automatic},
ColorFunction->Function[{x,y},Hue[x]]]

OpenersExampleSubsection15(Spacer1)MeshStyle  (4)

Color the mesh the same color as the plot:

ProbabilityScalePlot[RandomVariate[NormalDistribution[],100],"Normal",Joined->True,Mesh->9,MeshStyle->Automatic]

Use a red mesh in the x direction:

ProbabilityScalePlot[RandomVariate[NormalDistribution[],100],"Normal",Joined->True,Mesh->9,MeshStyle->Red]

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

ProbabilityScalePlot[RandomVariate[NormalDistribution[],100],Joined->True,Mesh->9,MeshStyle->{Red,Blue},MeshFunctions->{#1&,#2&}]

Use big red mesh points in the x direction:

ProbabilityScalePlot[RandomVariate[NormalDistribution[],100],Joined->True,Mesh->10,MeshStyle->Directive[PointSize[Large],Red]]

OpenersExampleSubsection16(Spacer1)Method  (3)

By default a reference line is drawn through the first and third quartiles of data:

ProbabilityScalePlot[RandomVariate[UniformDistribution[{0,1}],100]]

Draw the best-fit line through data:

ProbabilityScalePlot[RandomVariate[UniformDistribution[{0,1}],100],Method->{"ReferenceLineMethod"->"Fit"}]

The reference line represents the reference distribution:

ProbabilityScalePlot[RandomVariate[NormalDistribution[0,1],100],Method->{"ReferenceLineMethod"->"Reference"}]

OpenersExampleSubsection17(Spacer1)PlotLegends  (7)

By default, no legends are used:

ProbabilityScalePlot[{Sqrt[Range[40]],Log[Range[40]]}]

Generate a legend using labels:

ProbabilityScalePlot[{Sqrt[Range[40]],Log[Range[40]]},PlotLegends->{"sqrt","log"}]

Generate a legend using placeholders:

ProbabilityScalePlot[{Sqrt[Range[40]],Log[Range[40]]},PlotLegends->Automatic]

Legends use the same styles as the plot:

ProbabilityScalePlot[{Sqrt[Range[40]],Log[Range[40]]},PlotStyle->{Red,Blue},PlotLegends->{"sqrt","log"}]

Use (RefLink[Placed, paclet:ref/Placed]) to specify the legend placement:

ProbabilityScalePlot[{Sqrt[Range[40]],Log[Range[40]]},PlotLegends->Placed[{"sqrt","log"},Below]]

Place the legend inside the plot:

ProbabilityScalePlot[{Sqrt[Range[40]],Log[Range[40]]},PlotLegends->Placed[{"sqrt","log"},{0.25,0.75}]]

Use (RefLink[LineLegend, paclet:ref/LineLegend]) to change the legend appearance:

ProbabilityScalePlot[{Sqrt[Range[40]],Log[Range[40]]},PlotLegends->LineLegend[{"sqrt","log"},LegendFunction->Frame,LegendMarkers->None]]

OpenersExampleSubsection18(Spacer1)PlotMarkers  (7)

(RefLink[QuantilePlot, paclet:ref/QuantilePlot]) normally uses distinct colors to distinguish different sets of data:

data=Table[RandomVariate[ParetoDistribution[p[[1]],p[[2]]],20],{p,{{1,2},{4,9},{5,7},{7,9}}}];

ProbabilityScalePlot[data,"Normal",PlotMarkers->None]

Automatically use colors and shapes to distinguish sets of data:

data=Table[RandomVariate[ParetoDistribution[p[[1]],p[[2]]],20],{p,{{1,2},{4,9},{5,7},{7,9}}}];

ProbabilityScalePlot[ReleaseHold/@{data[[#]]&/@Range[Length@data]},"Normal",PlotMarkers->Automatic]

Use shapes only:

data=Table[RandomVariate[ParetoDistribution[p[[1]],p[[2]]],20],{p,{{1,2},{4,9},{5,7},{7,9}}}];

ProbabilityScalePlot[ReleaseHold/@{data[[#]]&/@Range[Length@data]},"Normal",PlotMarkers->Automatic,PlotStyle->Black]

Change the size of the default plot markers:

data=Table[RandomVariate[ParetoDistribution[p[[1]],p[[2]]],20],{p,{{1,2},{4,9},{5,7},{7,9}}}];

Table[ProbabilityScalePlot[ReleaseHold/@{data[[#]]&/@Range[Length@data]},"Normal",PlotMarkers->{Automatic,s}],{s,{Small,Medium}}]

Use arbitrary text for plot markers:

data=Table[RandomVariate[ParetoDistribution[p[[1]],p[[2]]],20],{p,{{1,2},{4,9},{5,7},{7,9}}}];

ProbabilityScalePlot[ReleaseHold/@{data[[#]]&/@Range[Length@data]},"Normal",PlotMarkers->{"1","2","3","4"}]

Use explicit graphics for plot markers:

data=Table[RandomVariate[ParetoDistribution[p[[1]],p[[2]]],20],{p,{{1,2},{4,9},{5,7},{7,9}}}];

ProbabilityScalePlot[ReleaseHold/@{data[[#]]&/@Range[Length@data]},"Normal",PlotMarkers->{,,,}]

Use the same symbol for all the sets of data:

data=Table[RandomVariate[ParetoDistribution[p[[1]],p[[2]]],20],{p,{{1,2},{4,9},{5,7},{7,9}}}];

ProbabilityScalePlot[ReleaseHold/@{data[[#]]&/@Range[Length@data]},"Normal",PlotMarkers->{"●"}]

Use α plot markers:

data=Table[RandomVariate[ParetoDistribution[p[[1]],p[[2]]],20],{p,{{1,2},{4,9},{5,7},{7,9}}}];

ProbabilityScalePlot[ReleaseHold/@{data[[#]]&/@Range[Length@data]},"Normal",PlotMarkers->"α"]

OpenersExampleSubsection19(Spacer1)PlotRange  (3)

(RefLink[PlotRange, paclet:ref/PlotRange]) is automatically calculated:

ProbabilityScalePlot[RandomVariate[LogNormalDistribution[2,6],100],"Normal"]

Show the whole dataset:

ProbabilityScalePlot[RandomVariate[LogNormalDistribution[2,6],100],"Normal",PlotRange->All]

Show the distribution for x between 1 and 3 and y between 90 and 99:

ProbabilityScalePlot[RandomVariate[NormalDistribution[],100],"Normal",PlotRange->{{1,3},{90,99}}]

OpenersExampleSubsection20(Spacer1)PlotStyle  (3)

Use different style directives:

Table[ProbabilityScalePlot[{RandomVariate[ParetoDistribution[1,10],100]},"Normal",Joined->True,PlotStyle->ps],{ps,{Red,Thick,Dashed,Directive[Red,Thick]}}]

By default different styles are chosen for multiple curves:

ProbabilityScalePlot[Table[RandomVariate[ParetoDistribution[x,10],100],{x,1,4,1}],"Normal"]

Explicitly specify the style for different curves:

ProbabilityScalePlot[Table[RandomVariate[ParetoDistribution[x,10],100],{x,1,4,1}],"Normal",PlotStyle->{Red,Green, Blue,Brown}]

OpenersExampleSubsection21(Spacer1)PlotTheme  (1)

Use a theme to create a black-and-white plot:

ProbabilityScalePlot[{1,2,4,7,3,5,8,10,9},PlotTheme->"Monochrome"]

Use a solid, light gray reference line:

ProbabilityScalePlot[{1,2,4,7,3,5,8,10,9},PlotTheme->"Monochrome",ReferenceLineStyle->Directive[LightGray,Dashing[{}]]]

OpenersExampleSubsection22(Spacer1)ReferenceLineStyle  (3)

(RefLink[ReferenceLineStyle, paclet:ref/ReferenceLineStyle]) by default uses a (RefLink[Dotted, paclet:ref/Dotted]) form of (RefLink[PlotStyle, paclet:ref/PlotStyle]):

ProbabilityScalePlot[RandomVariate[WeibullDistribution[2,4],100]]

Draw a red dotted reference line:

ProbabilityScalePlot[RandomVariate[WeibullDistribution[2,4],100],"Normal",ReferenceLineStyle->Red]

Draw a solid red reference line:

ProbabilityScalePlot[RandomVariate[WeibullDistribution[2,4],100],"Normal",ReferenceLineStyle->Directive[Red,Dashing[0]]]

Use (RefLink[None, paclet:ref/None]) to turn off the reference line:

ProbabilityScalePlot[RandomVariate[WeibullDistribution[2,4],100],"Normal",ReferenceLineStyle->None]

OpenersExampleSection3(Spacer1)Applications  (2)

A group of ecologists surveyed an island's bird species populations. For each species on the island, the number of individuals observed was recorded. Often (RefLink[LogNormalDistribution, paclet:ref/LogNormalDistribution]) is used to model abundance of species:

spCnts={8,44,91,32,4,33,8,115,61,136,18,54,43,28,56,36,137,26,53,21,69,12,13,42,10};

It appears that a lognormal model is a reasonable choice:

ProbabilityScalePlot[spCnts, "LogNormal",GridLines -> Automatic, GridLinesStyle -> "Classic",ImageSize->Medium]

Find the best-fitting (RefLink[LogNormalDistribution, paclet:ref/LogNormalDistribution]) using a maximum likelihood estimation:

𝒟=EstimatedDistribution[spCnts,LogNormalDistribution[μ,σ]]

Normal probability plot for a time slice of a random process:

data=RandomVariate[WienerProcess[0,3][7],10^3];

ProbabilityScalePlot[data,"Normal"]

OpenersExampleSection4(Spacer1)Properties & Relations  (8)

Compare data with different reference distributions:

Table[ProbabilityScalePlot[Range[1,100,0.25],ref,PlotLabel->ref],{ref,{"Weibull","Exponential","LogNormal","Rayleigh","Frechet", "Gumbel"}}]

Compare the quantiles of data with quantiles of a normal distribution:

QuantilePlot[Range[1,100,0.25]]

Compare the CDF of the data with the CDF of a normal distribution:

ProbabilityPlot[Range[1,100,0.25]]

(RefLink[BoxWhiskerChart, paclet:ref/BoxWhiskerChart]) and (RefLink[DistributionChart, paclet:ref/DistributionChart]) can be used to visualize the distribution of data:

data=RandomVariate[ExponentialDistribution[2],10^3];

{BoxWhiskerChart[data], DistributionChart[data]}

(RefLink[SmoothHistogram, paclet:ref/SmoothHistogram]) and (RefLink[Histogram, paclet:ref/Histogram]) can be used to visualize the distribution of data:

data=RandomVariate[ExponentialDistribution[2],10^3];

{SmoothHistogram[data,PlotRange->All], Histogram[data]}

(RefLink[DiscretePlot, paclet:ref/DiscretePlot]) can be used to visualize discrete distributions:

{ProbabilityScalePlot[RandomVariate[PoissonDistribution[3],100]],DiscretePlot[PDF[PoissonDistribution[3],x],{x,0,6},PlotStyle->PointSize[Medium]]}

Use (RefLink[ListPlot, paclet:ref/ListPlot]) to see the data:

data=RandomVariate[ExponentialDistribution[1],100];

data = FindClusters[data];

ListPlot[data]

(RefLink[ProbabilityScalePlot, paclet:ref/ProbabilityScalePlot]) ignores time stamps when input is a (RefLink[TimeSeries, paclet:ref/TimeSeries]):

data=TimeSeries[];

{ProbabilityScalePlot[data],ProbabilityScalePlot[data["Values"]]}

({{DocumentationFooterIconsRelatedFunction.png, ({{See Also}, {(RefLink[QuantilePlot, paclet:ref/QuantilePlot])  ▪  (RefLink[ProbabilityPlot, paclet:ref/ProbabilityPlot])  ▪  (RefLink[EstimatedDistribution, paclet:ref/EstimatedDistribution])  ▪  (RefLink[CDF, paclet:ref/CDF])  ▪  (RefLink[SmoothKernelDistribution, paclet:ref/SmoothKernelDistribution])}})}})

({{DocumentationFooterIconsRelatedGuide.png, ({{Related Guides}, {▪(RefLinkPlain[Reliability, paclet:guide/Reliability])}, {▪(RefLinkPlain[Random Variables, paclet:guide/RandomVariables])}, {▪(RefLinkPlain[Statistical Visualization, paclet:guide/StatisticalVisualization])}})}})