Learn R Programming

qualityTools (version 1.53)

qqPlot: Quantile-Quantile Plots for various distributions

Description

qqPlot creates a QQ plot of the values in x including a line which passes through the first and third quartiles.

Usage

qqPlot(x, y, confbounds = TRUE, alpha, main, xlab, ylab, xlim, ylim, 
       border = "red", bounds = "black", start, ...)

Arguments

x
the sample for qqPlot
y
character string specifying the distribution of x. The function qqPlot will support the following character strings for y:
  • beta
  • cauchy
  • chi-squared
confbounds
boolean value: TRUE if confidence bounds should be drawn (default value).
alpha
significance level for the confidence bounds, set on 0.05 by default.
main
an overall title for the plot: see title.
xlab
a title for the x axis: title.
ylab
a title for the y axis: title.
xlim
vector giving the range of the x-axis.
ylim
vector giving the range of the y-axis.
border
numerical value or single character string giving the color of interpolation line. By default border is set to red.
bounds
numerical value or single character string giving the color of confidence bounds lines. By default bounds is set to black.
start
A named list giving the parameters to be fitted with initial values. Must be supplied for some distribution: (see Details).
...
further graphical parameters: (see par).

Value

  • a list containing the x and y quantiles
  • xsample quantiles
  • ytheoretical quantiles

Details

Distribution fitting is deligated to function fitdistr of the R-package MASS. For computation of the confidence bounds the variance of the quantiles is estimated using the delta method, which implies estimation of observed Fisher Information matrix as well as the gradient of the CDF of the fitted distribution. Where possible, those values are replaced by their normal approximation.

See Also

ppPlot fitdistr in R-package MASS http://www.r-qualitytools.org/Analyze.html

Examples

Run this code
#set up the plotting window for 6 plots
par(mfrow = c(3,2))

#generate random data from weibull distribution
x = rweibull(20, 8, 2)

#Quantile-Quantile Plot for different distributions
qqPlot(x, "log-normal")
qqPlot(x, "normal")
qqPlot(x, "exponential", DB = TRUE)
qqPlot(x, "cauchy")
qqPlot(x, "weibull")
qqPlot(x, "logistic")

Run the code above in your browser using DataLab