Products
  • Wolfram|One

    The definitive Wolfram Language and notebook experience

  • Mathematica

    The original technical computing environment

  • System Modeler

    Multidomain modeling and simulation of complex systems

  • Compute ServicesUse with Mathematica and Wolfram|One
  • AI AccessUse with Mathematica and Wolfram|One
  • Finance Platform
  • Wolfram|Alpha Notebook Edition
  • Application Server
  • Enterprise Private Cloud
  • Wolfram Engine
  • Wolfram Player
  • Wolfram Cloud App
  • Wolfram Player App

More mobile apps

Wolfram|Alpha

  • Wolfram|Alpha Website
  • Wolfram|Alpha APIs

AI Products

  • Wolfram AI Ecosystem
  • Wolfram Foundation Tool
  • Wolfram Cloud MCP
  • Wolfram Local MCP
  • Agent One API
  • CAG Component APIs

Core Technologies of Wolfram Products

  • Wolfram Language
  • Computable Data
  • Wolfram Notebooks
  • Linguistic Understanding

Additional Deployment Options

  • Wolfram Cloud
  • Wolfram Web Engine
  • wolframscript
  • WSTPServer
  • Group & Organizational Licensing
  • All Products
Consulting & Solutions

We deliver solutions for the AI era—combining symbolic computation, data-driven insights and deep technical expertise

Wolfram Consulting

Data Science, Finance & Business

  • Artificial Intelligence
  • Data Science
  • Healthcare
  • Real Estate

Engineering

  • Civil Engineering
  • Automotive Engineering
  • Sustainable Energy

Science & Technology

  • AgTech
  • Biosciences
  • Environmental Science
  • Food Science
  • Quantum Computation
  • Social and Behavioral Sciences

More Wolfram Solutions

Technology for Education

  • Research Universities
  • Colleges & Teaching Universities
  • High Schools
  • Resources for Students

Education Initiatives

  • Next-Gen EdTech
  • Computer-Based Math

More Solutions for Education

  • Contact Us
Learning & Support

Get Started

  • Wolfram Language Introduction
  • Fast Intro for Programmers
  • Fast Intro for Math Students
  • Wolfram Language Documentation

More Learning

  • Highlighted Core Areas
  • Demonstrations
  • YouTube
  • Daily Study Groups
  • Wolfram Schools and Programs
  • Books

Grow Your Skills

  • Wolfram U

    Courses in computing, science, life and more

  • Community

    Learn, solve problems and share ideas.

  • Blog

    News, views and insights from Wolfram

  • Resources for

    Software Developers

Tech Support

  • Contact Us
  • Support FAQs
  • Support FAQs
  • Contact Us
Company
  • About Wolfram
  • Career Center
  • All Sites & Resources
  • Connect & Follow
  • Contact Us

Work with Us

  • Student Ambassador Initiative
  • Wolfram for Startups
  • Student Opportunities
  • Jobs Using Wolfram Language

Educational Programs for Adults

  • Summer School
  • Winter School

Educational Programs for Youth

  • Middle School Camp
  • High School Research Program
  • Computational Adventures

Read

  • Stephen Wolfram's Writings
  • Wolfram Blog
  • Wolfram Tech | Books
  • Wolfram Media
  • Complex Systems

Educational Resources

  • Wolfram MathWorld
  • Wolfram in STEM
  • Wolfram Challenges
  • Wolfram Problem Generator

Wolfram Initiatives

  • Wolfram Science
  • Wolfram Foundation
  • History of Mathematics Project

Events

  • Stephen Wolfram Livestreams
  • Online & In-Person Events
  • Contact Us
  • Connect & Follow
For AIs
  • Your Account
  • User Portal
  • Wolfram Cloud
  • Products
    • Wolfram|One
    • Mathematica
    • System Modeler
    • Compute ServicesUse with Mathematica and Wolfram|One
    • AI AccessUse with Mathematica and Wolfram|One
    • Finance Platform
    • Wolfram|Alpha Notebook Edition
    • Application Server
    • Enterprise Private Cloud
    • Wolfram Engine
    • Wolfram Player
    • Wolfram Cloud App
    • Wolfram Player App

    More mobile apps

    • Wolfram|Alpha
      • Wolfram|Alpha Website
      • Wolfram|Alpha APIs
    • AI Products
      • Wolfram AI Ecosystem
      • Wolfram Foundation Tool
      • Wolfram Cloud MCP
      • Wolfram Local MCP
      • Agent One API
      • CAG Component APIs
    • Core Technologies
      • Wolfram Language
      • Computable Data
      • Wolfram Notebooks
      • Linguistic Understanding
    • Additional Deployment Options
      • Wolfram Cloud
      • Wolfram Web Engine
      • wolframscript
      • WSTPServer
    • Group & Organizational Licensing
    • All Products
  • Consulting & Solutions
    • Wolfram Consulting

    Data Science, Finance & Business

    • Artificial Intelligence
    • Data Science
    • Healthcare
    • Real Estate

    Engineering

    • Civil Engineering
    • Automotive Engineering
    • Sustainable Energy

    Science & Technology

    • AgTech
    • Biosciences
    • Environmental Science
    • Food Science
    • Quantum Computation
    • Social and Behavioral Sciences

    More Wolfram Solutions

    Technology for Education

    • Research Universities
    • Colleges & Teaching Universities
    • High Schools
    • Resources for Students

    Education Initiatives

    • Next-Gen EdTech
    • Computer-Based Math

    More Solutions for Education

    • Contact Us
  • Learning & Support

    Get Started

    • Wolfram Language Introduction
    • Fast Intro for Programmers
    • Fast Intro for Math Students
    • Wolfram Language Documentation

    Grow Your Skills

    • Wolfram U

      Courses in computing, science, life and more

    • Community

      Learn, solve problems and share ideas.

    • Blog

      News, views and insights from Wolfram

    • Resources for

      Software Developers
    • Tech Support
      • Contact Us
      • Support FAQs
    • More Learning
      • Highlighted Core Areas
      • Demonstrations
      • YouTube
      • Daily Study Groups
      • Wolfram Schools and Programs
      • Books
    • Support FAQs
    • Contact Us
  • Company
    • About Wolfram
    • Career Center
    • All Sites & Resources
    • Connect & Follow
    • Contact Us

    Work with Us

    • Student Ambassador Initiative
    • Wolfram for Startups
    • Student Opportunities
    • Jobs Using Wolfram Language

    Educational Programs for Adults

    • Summer School
    • Winter School

    Educational Programs for Youth

    • Middle School Camp
    • High School Research Program
    • Computational Adventures

    Read

    • Stephen Wolfram's Writings
    • Wolfram Blog
    • Wolfram Tech | Books
    • Wolfram Media
    • Complex Systems
    • Educational Resources
      • Wolfram MathWorld
      • Wolfram in STEM
      • Wolfram Challenges
      • Wolfram Problem Generator
    • Wolfram Initiatives
      • Wolfram Science
      • Wolfram Foundation
      • History of Mathematics Project
    • Events
      • Stephen Wolfram Livestreams
      • Online & In-Person Events
    • Contact Us
    • Connect & Follow
  • For AIs
  • Wolfram Cloud
  • Your Account
  • User Portal
Wolfram Language & System Documentation Center
ProbabilityScalePlot
  • See Also
    • QuantilePlot
    • ProbabilityPlot
    • EstimatedDistribution
    • CDF
    • SmoothKernelDistribution
  • Related Guides
    • Statistical Visualization
    • Reliability
    • Random Variables
    • See Also
      • QuantilePlot
      • ProbabilityPlot
      • EstimatedDistribution
      • CDF
      • SmoothKernelDistribution
    • Related Guides
      • Statistical Visualization
      • Reliability
      • Random Variables

ProbabilityScalePlot[{x1,x2,…}]

generates a normal probability plot of the samples xi.

ProbabilityScalePlot[{x1,x2,…},"dist"]

generates a probability plot scaled for the distribution "dist".

ProbabilityScalePlot[{data1,data2,…},"dist"]

generates several scaled probability plots for data1, data2, ….

Details and Options
Details and Options Details and Options
Examples  
Basic Examples  
Scope  
Data  
Tabular Data  
Presentation  
Options  
ClippingStyle  
ColorFunction  
ColorFunctionScaling  
Show More Show More
Filling  
FillingStyle  
GridLines  
GridLinesStyle  
Joined  
Mesh  
MeshFunctions  
MeshShading  
MeshStyle  
Method  
PlotHighlighting  
PlotLegends  
PlotMarkers  
PlotRange  
PlotStyle  
PlotTheme  
ReferenceLineStyle  
ScalingFunctions  
Applications  
Properties & Relations  
See Also
Related Guides
History
Cite this Page
BUILT-IN SYMBOL
  • See Also
    • QuantilePlot
    • ProbabilityPlot
    • EstimatedDistribution
    • CDF
    • SmoothKernelDistribution
  • Related Guides
    • Statistical Visualization
    • Reliability
    • Random Variables
    • See Also
      • QuantilePlot
      • ProbabilityPlot
      • EstimatedDistribution
      • CDF
      • SmoothKernelDistribution
    • Related Guides
      • Statistical Visualization
      • Reliability
      • Random Variables

ProbabilityScalePlot

ProbabilityScalePlot[{x1,x2,…}]

generates a normal probability plot of the samples xi.

ProbabilityScalePlot[{x1,x2,…},"dist"]

generates a probability plot scaled for the distribution "dist".

ProbabilityScalePlot[{data1,data2,…},"dist"]

generates several scaled probability plots for data1, data2, ….

Details and Options

  • 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:
  • "Normal"normal plot
    "Weibull"Weibull plot
    "Exponential"exponential plot
    "LogNormal"lognormal plot
    "Rayleigh"Rayleigh plot
    "Frechet"Fréchet plot
    "Gumbel"Gumbel plot
  • The positions plotted correspond to {xi,yi} where yi are uniform order statistics medians given by Quantile[{x1,x2,…},].
  • The data is scaled by distribution-specific transformations and given by:
  • "Exponential"
    "Frechet"
    "Gumbel"
    "LogNormal"
    "Normal"
    "Rayleigh"
    "Weibull"
  • 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] provides a wrapper w to be applied to the resulting graphics primitives.
  • ProbabilityScalePlot[Tabular[…]cspec] extracts and plots values from the tabular object using the column specification cspec.
  • The following forms of column specifications cspec are allowed for plotting tabular data:
  • colxplot the values from column x
    {colx1,colx2,…}plot columns x1, x2, …
  • 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[datai,effect]dynamically highlight fi with an effect
    Highlighted[datai,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
  • ProbabilityScalePlot has the same options as Graphics, with the following additions and changes: [List of all options]
  • AspectRatio1/GoldenRatioratio of height to width
    ClippingStyle Automaticwhat to draw where curves are clipped
    ColorFunction Automatichow to determine the coloring of curves
    ColorFunctionScaling Truewhether to scale arguments to ColorFunction
    Filling Nonefilling to insert under each curve
    FillingStyle Automaticstyle to use for filling
    Joined Automaticwhether to join points
    Mesh Nonehow many mesh points to draw on each curve
    MeshFunctions {#1&}how to determine the placement of mesh points
    MeshShading Nonehow to shade regions between mesh points
    MeshStyle Automaticthe style for mesh points
    Method Automaticmethods to use
    PerformanceGoal$PerformanceGoalaspects of performance to try to optimize
    PlotHighlighting Automatichighlighting effect for curves
    PlotLegends Nonelegends for data points
    PlotMarkers Nonemarkers to use to indicate each point for datasets
    PlotRange Automaticrange of values to include
    PlotRangeClippingTruewhether to clip at the plot range
    PlotStyle Automaticgraphics directives to specify the style for each object
    PlotTheme $PlotThemeoverall theme for the plot
    ReferenceLineStyle Automaticstyle for the reference line
    ScalingFunctions Nonehow to scale individual coordinates
    WorkingPrecisionMachinePrecisionthe precision used in internal computations for symbolic distributions
  • With Filling->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 Joined->True 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.
  • Typical settings for PlotLegends include:
  • Noneno legend
    Automaticautomatically determine legend
    {lbl1,lbl2,…}use lbl1, lbl2, … as legend labels
    Placed[lspec,…]specify placement for legend
  • PlotStylesty specifies the styles to use for each curve. Possible settings include:
  • {sty1,sty2,…}sequence of styles for the datasets
    <|"key"val,…|>styling elements for different levels of data
  • The accepted keys are:
  • "Base"overall style for all the datai
    "Lists"list of styles styi for each datai
  • ColorData["DefaultPlotColors"] gives the default sequence of colors used by PlotStyle.
  • With the ReferenceLineStyle->None, no reference line will be drawn.
  • Possible highlighting effects for Highlighted and PlotHighlighting include:
  • stylehighlight the indicated data
    "Ball"highlight and label the indicated point in data
    "Dropline"highlight and label the indicated point in data 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
  • Possible settings for ScalingFunctions include:
  • syscale the y axis
    {sx,sy}scale x and y axes
  • Common built-in scaling functions s include:
  • "Reverse"reverse the coordinate direction
  • List of all options

    • AlignmentPointCenterthe default point in the graphic to align with
      AspectRatio1/GoldenRatioratio of height to width
      AxesFalsewhether to draw axes
      AxesLabelNoneaxes labels
      AxesOriginAutomaticwhere axes should cross
      AxesStyle{}style specifications for the axes
      BackgroundNonebackground color for the plot
      BaselinePositionAutomatichow to align with a surrounding text baseline
      BaseStyle{}base style specifications for the graphic
      ClippingStyleAutomaticwhat to draw where curves are clipped
      ColorFunctionAutomatichow to determine the coloring of curves
      ColorFunctionScalingTruewhether to scale arguments to ColorFunction
      ContentSelectableAutomaticwhether to allow contents to be selected
      CoordinatesToolOptionsAutomaticdetailed behavior of the coordinates tool
      Epilog{}primitives rendered after the main plot
      FillingNonefilling to insert under each curve
      FillingStyleAutomaticstyle to use for filling
      FormatTypeTraditionalFormthe default format type for text
      FrameFalsewhether to put a frame around the plot
      FrameLabelNoneframe labels
      FrameStyle{}style specifications for the frame
      FrameTicksAutomaticframe ticks
      FrameTicksStyle{}style specifications for frame ticks
      GridLinesNonegrid lines to draw
      GridLinesStyle{}style specifications for grid lines
      ImageMargins0.the margins to leave around the graphic
      ImagePaddingAllwhat extra padding to allow for labels etc.
      ImageSizeAutomaticthe absolute size at which to render the graphic
      JoinedAutomaticwhether to join points
      LabelStyle{}style specifications for labels
      MeshNonehow many mesh points to draw on each curve
      MeshFunctions{#1&}how to determine the placement of mesh points
      MeshShadingNonehow to shade regions between mesh points
      MeshStyleAutomaticthe style for mesh points
      MethodAutomaticmethods to use
      PerformanceGoal$PerformanceGoalaspects of performance to try to optimize
      PlotHighlightingAutomatichighlighting effect for curves
      PlotLabelNonean overall label for the plot
      PlotLegendsNonelegends for data points
      PlotMarkersNonemarkers to use to indicate each point for datasets
      PlotRangeAutomaticrange of values to include
      PlotRangeClippingTruewhether to clip at the plot range
      PlotRangePaddingAutomatichow much to pad the range of values
      PlotRegionAutomaticthe final display region to be filled
      PlotStyleAutomaticgraphics directives to specify the style for each object
      PlotTheme$PlotThemeoverall theme for the plot
      PreserveImageOptionsAutomaticwhether to preserve image options when displaying new versions of the same graphic
      Prolog{}primitives rendered before the main plot
      ReferenceLineStyleAutomaticstyle for the reference line
      RotateLabelTruewhether to rotate y labels on the frame
      ScalingFunctionsNonehow to scale individual coordinates
      TicksAutomaticaxes ticks
      TicksStyle{}style specifications for axes ticks
      WorkingPrecisionMachinePrecisionthe precision used in internal computations for symbolic distributions

Examples

open all close all

Basic Examples  (3)

A normal probability plot compared to an estimated normal distribution:

Wolfram Language code: ProbabilityScalePlot[RandomVariate[NormalDistribution[1, 2], 100], "Normal"]

A Weibull probability plot:

Wolfram Language code: ProbabilityScalePlot[RandomVariate[WeibullDistribution[2, 3], 100], "Weibull"]

Normal probability plot of several datasets with a legend:

Wolfram Language code: data1 = RandomVariate[NormalDistribution[2, 3], 100]; data2 = RandomVariate[StudentTDistribution[4, 2, 3], 200];
Wolfram Language code: ProbabilityScalePlot[{data1, data2}, "Normal", PlotLegends -> {"one", "two"}]

Scope  (29)

Data  (13)

ProbabilityScalePlot works with numeric data:

Wolfram Language code: ProbabilityScalePlot[RandomVariate[UniformDistribution[{0, 1}], 100]]

ProbabilityScalePlot with multiple datasets:

Wolfram Language code: data1 = RandomVariate[NormalDistribution[1, 2], 100]; data2 = RandomVariate[UniformDistribution[{10, 20}], 100];
Wolfram Language code: ProbabilityScalePlot[{data1, data2}]

Normal probability plot:

Wolfram Language code: data = RandomVariate[NormalDistribution[1, 2], 100];
Wolfram Language code: ProbabilityScalePlot[data, "Normal"]

A Weibull probability plot:

Wolfram Language code: data1 = RandomVariate[WeibullDistribution[2, 3], 100];
Wolfram Language code: ProbabilityScalePlot[data1, "Weibull"]

An exponential probability plot:

Wolfram Language code: ProbabilityScalePlot[RandomVariate[ExponentialDistribution[1], 1000], "Exponential"]

Lognormal probability plot:

Wolfram Language code: ProbabilityScalePlot[RandomVariate[LogNormalDistribution[0, 1], 200], "LogNormal"]

Rayleigh probability plot:

Wolfram Language code: ProbabilityScalePlot[RandomVariate[RayleighDistribution[1], 200], "Rayleigh"]

Fréchet probability plot:

Wolfram Language code: ProbabilityScalePlot[RandomVariate[FrechetDistribution[1, 2], 200], "Frechet", PlotRange -> Automatic]

Gumbel probability plot:

Wolfram Language code: ProbabilityScalePlot[RandomVariate[GumbelDistribution[1, 2], 200], "Gumbel"]

Plot values with units:

Wolfram Language code: Short[data = EntityValue[EntityList[EntityClass["Country", "Countries"]], "LifeExpectancy"]]
Wolfram Language code: ProbabilityScalePlot[data]

Plot the values from an association:

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

Plot data with weights:

Wolfram Language code: data = WeightedData[RandomVariate[NormalDistribution[], 100], Abs[RandomVariate[NormalDistribution[], 100]]]
Wolfram Language code: ProbabilityScalePlot[data]

Plot data from time series:

Wolfram Language code: data = TimeSeries[RandomReal[1, 50], {Automatic, Today}]
Wolfram Language code: ProbabilityScalePlot[data]

Tabular Data  (1)

Get tabular data:

Wolfram Language code: iris = ResourceData["Sample Tabular Data: Fisher Iris"]

Compare the data to a normal distribution:

Wolfram Language code: ProbabilityScalePlot[iris -> "SepalWidth"]

Compare multiple sets of data:

Wolfram Language code: ProbabilityScalePlot[iris -> {"SepalWidth", "PetalWidth"}]

Use PivotToColumns to generate columns of "SepalWidth" per species:

Wolfram Language code: pivot = PivotToColumns[iris, "Species" -> "SepalWidth"]

Compare probability of sepal width per species:

Wolfram Language code: ProbabilityScalePlot[pivot -> {ExtendedKey["SepalWidth", "setosa"], ExtendedKey["SepalWidth", "versicolor"], ExtendedKey["SepalWidth", "virginica"]}]

Use abbreviated names for extended keys when the elements are unique:

Wolfram Language code: ProbabilityScalePlot[pivot -> {"setosa", "versicolor", "virginica"}]

Use legends for the plot:

Wolfram Language code: ProbabilityScalePlot[pivot -> {"setosa", "versicolor", "virginica"}, PlotLegends -> {"setosa", "versicolor", "virginica"}]

Presentation  (15)

Multiple datasets are automatically colored to be distinct:

Wolfram Language code: data = {RandomVariate[NormalDistribution[], 100], RandomVariate[WeibullDistribution[1, 2], 100]};
Wolfram Language code: ProbabilityScalePlot[data]

Provide explicit styling to different sets:

Wolfram Language code: data = {RandomVariate[NormalDistribution[], 100], RandomVariate[WeibullDistribution[1, 2], 100]};
Wolfram Language code: ProbabilityScalePlot[data, PlotStyle -> {Blue, Red}]

Include legends for each dataset:

Wolfram Language code: data = {RandomVariate[NormalDistribution[], 100], RandomVariate[WeibullDistribution[1, 2], 100]};
Wolfram Language code: ProbabilityScalePlot[data, PlotLegends -> {"one", "two"}]

Use Legended to provide a legend for a specific dataset:

Wolfram Language code: normal = RandomVariate[NormalDistribution[], 100];weibull1 = RandomVariate[WeibullDistribution[1, 2], 100];weibull2 = RandomVariate[WeibullDistribution[2, 1], 100];
Wolfram Language code: ProbabilityScalePlot[{Legended[normal, "normal"], weibull1, weibull2}]

Add labels:

Wolfram Language code: 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:

Wolfram Language code: ProbabilityScalePlot[Range[100], ReferenceLineStyle -> Directive[Dashing[{}], Red]]

Turn off the reference line:

Wolfram Language code: ProbabilityScalePlot[Range[100], ReferenceLineStyle -> None]

Draw grid lines:

Wolfram Language code: ProbabilityScalePlot[Range[100], GridLines -> Automatic]

Provide an interactive Tooltip for the data:

Wolfram Language code: data = RandomVariate[UniformDistribution[{0, 1}], 100];
Wolfram Language code: ProbabilityScalePlot[Tooltip[data], PlotStyle -> Directive[PointSize[Medium], Orange]]
Wolfram Language code: ProbabilityScalePlot[Tooltip[data, BoxWhiskerChart[data]], PlotStyle -> Blue]

Create filled plots:

Wolfram Language code: data1 = RandomReal[NormalDistribution[100, 400], 200]; data2 = RandomReal[UniformDistribution[{5, 400}], 500];
Wolfram Language code: ProbabilityScalePlot[{data1, data2}, Filling -> {1 -> {2}}, FillingStyle -> {Red, Blue}, Joined -> True]

Use shapes to distinguish different datasets:

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

Use Joined to connect datasets with lines:

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

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

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

Reverse the direction of the x axis:

Wolfram Language code: ProbabilityScalePlot[{1, 2, 4, 7, 3, 5, 8, 10, 9}, ScalingFunctions -> {"Reverse", None}]

Plots usually have interactive callouts showing the coordinates when you mouse over them:

Wolfram Language code: ProbabilityScalePlot[{1, 2, 4, 7, 3, 5, 8, 10, 9}]

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

Wolfram Language code: ProbabilityScalePlot[Callout[{1, 2, 4, 7, 3, 5, 8, 10, 9}, "hello", 3]]

Choose from multiple interactive highlighting effects:

Wolfram Language code: {ProbabilityScalePlot[{1, 2, 4, 7, 3, 5, 8, 10, 9}, PlotHighlighting -> "Dropline"], ProbabilityScalePlot[{1, 2, 4, 7, 3, 5, 8, 10, 9}, PlotHighlighting -> "XSlice"]}

Options  (78)

ClippingStyle  (4)

Omit clipped regions of the plot:

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

Show the clipped regions like the rest of the curve:

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

Show the clipped regions with red lines:

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

Show the clipped regions as red and thick:

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

ColorFunction  (6)

ColorFunction requires at least one dataset to be Joined:

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

Color by scaled and coordinates:

Wolfram Language code: 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:

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

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

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

ColorFunction has higher priority than PlotStyle for coloring the curve:

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

Use Automatic in MeshShading to use ColorFunction:

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

ColorFunctionScaling  (2)

Color the line based on scaled value:

Wolfram Language code: 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 value:

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

Filling  (7)

Fill from data to the reference line:

Wolfram Language code: ProbabilityScalePlot[RandomVariate[ParetoDistribution[1, 2], 50], Filling -> Automatic, Joined -> True]

Use symbolic or explicit values for filling:

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

Points fill with stems:

Wolfram Language code: ProbabilityScalePlot[RandomVariate[ParetoDistribution[1, 2], 50], Filling -> Automatic]

Curves fill with solid regions:

Wolfram Language code: ProbabilityScalePlot[RandomVariate[ParetoDistribution[1, 2], 50], Filling -> Automatic, Joined -> True]

Fill from the third dataset to the bottom:

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

Fill between datasets using a particular style:

Wolfram Language code: 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:

Wolfram Language code: 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:

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

FillingStyle  (2)

Use different fill colors:

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

Fill with transparent orange regions:

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

GridLines  (1)

Use automatically computed grid lines:

Wolfram Language code: ProbabilityScalePlot[RandomVariate[WeibullDistribution[2, 2], 100], "Weibull", GridLines -> Automatic]

GridLinesStyle  (1)

Use light gray grid lines:

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

Joined  (1)

Datasets are not joined by default:

Wolfram Language code: ProbabilityScalePlot[RandomVariate[NormalDistribution[], 100]]

Join the points:

Wolfram Language code: ProbabilityScalePlot[RandomVariate[NormalDistribution[], 100], Joined -> True]

Mesh  (4)

Use 20 mesh levels evenly spaced in the direction:

Wolfram Language code: ProbabilityScalePlot[RandomVariate[NormalDistribution[], 100], "Normal", Joined -> True, Mesh -> 20]

Use the mesh to divide the curve into deciles:

Wolfram Language code: data = RandomVariate[UniformDistribution[{1, 10}], 100];
Wolfram Language code: ProbabilityScalePlot[data, Joined -> True, Mesh -> {Quantile[data, Range[0.1, 0.9, 0.1]]}]

Use an explicit list of values for the mesh:

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

Specify mesh positions and styles:

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

MeshFunctions  (2)

Use a mesh evenly spaced in the and directions:

Wolfram Language code: 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 direction (red) and 10 in the direction (blue):

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

MeshShading  (6)

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

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

Use None to remove segments:

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

MeshShading can be used with PlotStyle:

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

MeshShading has higher priority than PlotStyle for styling the curve:

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

Use the PlotStyle for some segments by setting MeshShading to Automatic:

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

MeshShading can be used with ColorFunction:

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

MeshStyle  (4)

Color the mesh the same color as the plot:

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

Use a red mesh in the direction:

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

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

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

Use big red mesh points in the direction:

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

Method  (3)

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

Wolfram Language code: ProbabilityScalePlot[RandomVariate[UniformDistribution[{0, 1}], 100]]

Draw the best-fit line through data:

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

The reference line represents the reference distribution:

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

PlotHighlighting  (9)

Plots have interactive coordinate callouts with the default setting PlotHighlightingAutomatic:

Wolfram Language code: ProbabilityScalePlot[{1, 2, 4, 7, 3, 5, 8, 10, 9}]

Use PlotHighlightingNone to disable the highlighting for the entire plot:

Wolfram Language code: ProbabilityScalePlot[{1, 2, 4, 7, 3, 5, 8, 10, 9}, PlotHighlighting -> None]

Move the mouse over a set of points to highlight it using arbitrary graphics directives:

Wolfram Language code: ProbabilityScalePlot[{{1, 2, 4, 7, 3, 5, 8, 10, 9}, {1, 2, 4, 5, 4, 7, 3, 6, 8, 10, 9}}, PlotHighlighting -> Directive[Red, AbsolutePointSize[10], DropShadowing[]]]

Move the mouse over the points to highlight them with balls and labels:

Wolfram Language code: ProbabilityScalePlot[{1, 2, 4, 5, 4, 7, 3, 6, 8, 10, 9}, PlotHighlighting -> "Dropline"]

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

Wolfram Language code: ProbabilityScalePlot[{1, 2, 4, 5, 4, 7, 3, 6, 8, 10, 9}, PlotHighlighting -> "Dropline"]

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

Wolfram Language code: ProbabilityScalePlot[{1, 2, 4, 5, 4, 7, 3, 6, 8, 10, 9}, PlotHighlighting -> "XSlice"]

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

Wolfram Language code: ProbabilityScalePlot[{{1, 2, 7, 7, 6, 5, 8, 10, 9}, {1, 2, 4, 5, 4, 7, 3, 6, 8, 10, 9}}, PlotHighlighting -> "YSlice"]

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

Wolfram Language code: ProbabilityScalePlot[{{1, 2, 7, 7, 6, 5, 8, 10, 9}, {1, 2, 4, 5, 4, 7, 3, 6, 8, 10, 9}}, PlotHighlighting -> "XNearestPoint"]

Specify the style for the points:

Wolfram Language code: ProbabilityScalePlot[{{1, 2, 7, 7, 6, 5, 8, 10, 9}, {1, 2, 4, 5, 4, 7, 3, 6, 8, 10, 9}}, PlotHighlighting -> {"XNearestPoint", <|"Style" -> Red|>}]

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

Wolfram Language code: ProbabilityScalePlot[{{1, 2, 7, 7, 6, 5, 8, 10, 9}, {1, 2, 4, 5, 4, 7, 3, 6, 8, 10, 9}}, PlotHighlighting -> "XYLabel"]

Use Callout options to change the appearance of the label:

Wolfram Language code: ProbabilityScalePlot[{{1, 2, 7, 7, 6, 5, 8, 10, 9}, {1, 2, 4, 5, 4, 7, 3, 6, 8, 10, 9}}, PlotHighlighting -> {"XYLabel", <|"Appearance" -> "Corners", "CalloutMarker" -> "Circle"|>}]

Combine components to create a custom effect:

Wolfram Language code: ProbabilityScalePlot[{{1, 2, 7, 7, 6, 5, 8, 10, 9}, {1, 2, 4, 5, 4, 7, 3, 6, 8, 10, 9}}, PlotHighlighting -> {{"XNearestPoint", <|"Style" -> Magenta|>}, {"XYLabel", <|"Appearance" -> "Corners", "CalloutMarker" -> "Circle"|>}}]

PlotLegends  (7)

By default, no legends are used:

Wolfram Language code: ProbabilityScalePlot[{Sqrt[Range[40]], Log[Range[40]]}]

Generate a legend using labels:

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

Generate a legend using placeholders:

Wolfram Language code: ProbabilityScalePlot[{Sqrt[Range[40]], Log[Range[40]]}, PlotLegends -> Automatic]

Legends use the same styles as the plot:

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

Use Placed to specify the legend placement:

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

Place the legend inside the plot:

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

Use LineLegend to change the legend appearance:

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

PlotMarkers  (7)

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

Wolfram Language code: data = Table[RandomVariate[ParetoDistribution[p[[1]], p[[2]]], 20], {p, {{1, 2}, {4, 9}, {5, 7}, {7, 9}}}];
Wolfram Language code: ProbabilityScalePlot[data, "Normal", PlotMarkers -> None]

Automatically use colors and shapes to distinguish sets of data:

Wolfram Language code: data = Table[RandomVariate[ParetoDistribution[p[[1]], p[[2]]], 20], {p, {{1, 2}, {4, 9}, {5, 7}, {7, 9}}}];
Wolfram Language code: ProbabilityScalePlot[ReleaseHold /@ {data[[#]]& /@ Range[Length@data]}, "Normal", PlotMarkers -> Automatic]

Use shapes only:

Wolfram Language code: data = Table[RandomVariate[ParetoDistribution[p[[1]], p[[2]]], 20], {p, {{1, 2}, {4, 9}, {5, 7}, {7, 9}}}];
Wolfram Language code: ProbabilityScalePlot[ReleaseHold /@ {data[[#]]& /@ Range[Length@data]}, "Normal", PlotMarkers -> Automatic, PlotStyle -> StandardBlue]

Change the size of the default plot markers:

Wolfram Language code: data = Table[RandomVariate[ParetoDistribution[p[[1]], p[[2]]], 20], {p, {{1, 2}, {4, 9}, {5, 7}, {7, 9}}}];
Wolfram Language code: Table[ProbabilityScalePlot[ReleaseHold /@ {data[[#]]& /@ Range[Length@data]}, "Normal", PlotMarkers -> {Automatic, s}], {s, {Small, Medium}}]

Use arbitrary text for plot markers:

Wolfram Language code: data = Table[RandomVariate[ParetoDistribution[p[[1]], p[[2]]], 20], {p, {{1, 2}, {4, 9}, {5, 7}, {7, 9}}}];
Wolfram Language code: ProbabilityScalePlot[ReleaseHold /@ {data[[#]]& /@ Range[Length@data]}, "Normal", PlotMarkers -> {"1", "2", "3", "4"}]

Use explicit graphics for plot markers:

Wolfram Language code: data = Table[RandomVariate[ParetoDistribution[p[[1]], p[[2]]], 20], {p, {{1, 2}, {4, 9}, {5, 7}, {7, 9}}}];
Wolfram Language code: ProbabilityScalePlot[ReleaseHold /@ {data[[#]]& /@ Range[Length@data]}, "Normal", PlotMarkers -> {[image], [image], [image], [image]}]

Use the same symbol for all the sets of data:

Wolfram Language code: data = Table[RandomVariate[ParetoDistribution[p[[1]], p[[2]]], 20], {p, {{1, 2}, {4, 9}, {5, 7}, {7, 9}}}];
Wolfram Language code: ProbabilityScalePlot[ReleaseHold /@ {data[[#]]& /@ Range[Length@data]}, "Normal", PlotMarkers -> {"●"}]

Use plot markers:

Wolfram Language code: data = Table[RandomVariate[ParetoDistribution[p[[1]], p[[2]]], 20], {p, {{1, 2}, {4, 9}, {5, 7}, {7, 9}}}];
Wolfram Language code: ProbabilityScalePlot[ReleaseHold /@ {data[[#]]& /@ Range[Length@data]}, "Normal", PlotMarkers -> "α"]

PlotRange  (3)

PlotRange is automatically calculated:

Wolfram Language code: ProbabilityScalePlot[RandomVariate[LogNormalDistribution[2, 6], 100], "Normal"]

Show the whole dataset:

Wolfram Language code: ProbabilityScalePlot[RandomVariate[LogNormalDistribution[2, 6], 100], "Normal", PlotRange -> All]

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

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

PlotStyle  (3)

Use different style directives:

Wolfram Language code: 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:

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

Explicitly specify the style for different curves:

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

PlotTheme  (1)

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

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

Use a solid, light gray reference line:

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

ReferenceLineStyle  (3)

ReferenceLineStyle by default uses a Dotted form of PlotStyle:

Wolfram Language code: ProbabilityScalePlot[RandomVariate[WeibullDistribution[2, 4], 100]]

Draw a red dotted reference line:

Wolfram Language code: ProbabilityScalePlot[RandomVariate[WeibullDistribution[2, 4], 100], "Normal", ReferenceLineStyle -> Red]

Draw a solid red reference line:

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

Use None to turn off the reference line:

Wolfram Language code: ProbabilityScalePlot[RandomVariate[WeibullDistribution[2, 4], 100], "Normal", ReferenceLineStyle -> None]

ScalingFunctions  (2)

By default ProbabilityScalePlot uses an automatic scale on both of the axes:

Wolfram Language code: ProbabilityScalePlot[RandomVariate[UniformDistribution[{0, 1}], 100]]

Reverse the direction of the x axis:

Wolfram Language code: ProbabilityScalePlot[RandomVariate[UniformDistribution[{0, 1}], 100], ScalingFunctions -> {"Reverse", None}]

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 LogNormalDistribution is used to model abundance of species:

Wolfram Language code: 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:

Wolfram Language code: ProbabilityScalePlot[spCnts, "LogNormal", GridLines -> Automatic, GridLinesStyle -> "Classic", ImageSize -> Medium]

Find the best-fitting LogNormalDistribution using a maximum likelihood estimation:

Wolfram Language code: 𝒟 = EstimatedDistribution[spCnts, LogNormalDistribution[μ, σ]]

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

Wolfram Language code: data = RandomVariate[WienerProcess[0, 3][7], 10 ^ 3];
Wolfram Language code: ProbabilityScalePlot[data, "Normal"]

Properties & Relations  (8)

Compare data with different reference distributions:

Wolfram Language code: 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:

Wolfram Language code: QuantilePlot[Range[1, 100, 0.25]]

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

Wolfram Language code: ProbabilityPlot[Range[1, 100, 0.25]]

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

Wolfram Language code: data = RandomVariate[ExponentialDistribution[2], 10 ^ 3];
Wolfram Language code: {BoxWhiskerChart[data], DistributionChart[data]}

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

Wolfram Language code: data = RandomVariate[ExponentialDistribution[2], 10 ^ 3];
Wolfram Language code: {SmoothHistogram[data, PlotRange -> All], Histogram[data]}

DiscretePlot can be used to visualize discrete distributions:

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

Use ListPlot to see the data:

Wolfram Language code: data = RandomVariate[ExponentialDistribution[1], 100];
Wolfram Language code: data = FindClusters[data];
Wolfram Language code: ListPlot[data]

ProbabilityScalePlot ignores time stamps when input is a TimeSeries:

Wolfram Language code: data = TemporalData[TimeSeries, {{{-1.2851063764241863, 1.8324042559834568, 4.644950609531538, 1.509265945417493, 1.8128859551454304, 3.1813846692402996, 2.171122557373735, 1.5336042672985486, 1.419469763349254, -0.2663059484359207, 0.3409179135 ... 18797615790018, -1.2241389048830675, 2.059880322321172, -0.36363794430027485, 0.4890752692327103}}, {{0, 999, 1}}, 1, {"Continuous", 1}, {"Discrete", 1}, 1, {ResamplingMethod -> {"Interpolation", InterpolationOrder -> 1}}}, False, 10.1];
Wolfram Language code: {ProbabilityScalePlot[data], ProbabilityScalePlot[data["Values"]]}

See Also

QuantilePlot  ProbabilityPlot  EstimatedDistribution  CDF  SmoothKernelDistribution

Related Guides

    ▪
  • Statistical Visualization
  • ▪
  • Reliability
  • ▪
  • Random Variables

History

Introduced in 2010 (8.0) | Updated in 2012 (9.0) ▪ 2014 (10.0) ▪ 2022 (13.1) ▪ 2023 (13.3) ▪ 2025 (14.2) ▪ 2026 (15.0)

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

Text

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

CMS

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

APA

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

BibTeX

@misc{reference.wolfram_2026_probabilityscaleplot, author="Wolfram Research", title="{ProbabilityScalePlot}", year="2026", howpublished="\url{https://reference.wolfram.com/language/ref/ProbabilityScalePlot.html}", note=[Accessed: 01-September-2026]}

BibLaTeX

@online{reference.wolfram_2026_probabilityscaleplot, organization={Wolfram Research}, title={ProbabilityScalePlot}, year={2026}, url={https://reference.wolfram.com/language/ref/ProbabilityScalePlot.html}, note=[Accessed: 01-September-2026]}

Top
Introduction for Programmers
Introductory Book
Wolfram Function Repository | Wolfram Data Repository | Wolfram Data Drop | Wolfram Language Products
Top
  • Products
  • Wolfram|One
  • Mathematica
  • AI Access
  • Compute Services
  • System Modeler

  • Wolfram|Alpha Notebook Edition
  • Wolfram|Alpha Pro
  • Mobile Apps

  • Wolfram Engine
  • Wolfram Player

  • Volume & Site Licensing
  • Server Deployment Options
  • Consulting
  • Wolfram Consulting
  • Repositories
  • Data Repository
  • Function Repository
  • Community Paclet Repository
  • Neural Net Repository
  • Prompt Repository

  • Wolfram Language Example Repository
  • Notebook Archive
  • Wolfram GitHub
  • Learning
  • Wolfram U
  • Wolfram Language Documentation
  • Webinars & Training
  • Educational Programs

  • Wolfram Language Introduction
  • Fast Introduction for Programmers
  • Fast Introduction for Math Students
  • Books

  • Wolfram Community
  • Wolfram Blog
  • Public Resources
  • Wolfram|Alpha
  • Wolfram Problem Generator
  • Wolfram Challenges

  • Computer-Based Math
  • Computational Thinking
  • Computational Adventures

  • Demonstrations Project
  • Wolfram Data Drop
  • MathWorld
  • Wolfram Science
  • Wolfram Media Publishing
  • Customer Resources
  • Store
  • Product Downloads
  • User Portal
  • Your Account
  • Organization Access

  • Support FAQ
  • Contact Support
  • Company
  • About Wolfram
  • Careers
  • Contact
  • Events
Wolfram Community Wolfram Blog
Legal & Privacy Policy
WolframAlpha.com | WolframCloud.com
© 2026 Wolfram
© 2026 Wolfram | Legal & Privacy Policy |
English