DescTools (version 0.99.36)

PlotMarDens: Scatterplot With Marginal Densities

Description

Draw a scatter plot with marginal densities on the x- and y-axis. Groups can be defined by grp.

Usage

PlotMarDens(x, y, grp = 1, xlim = NULL, ylim = NULL,
            col = rainbow(nlevels(factor(grp))),
            mardens = c("all","x","y"), pch = 1, pch.cex = 1,
            main = "", na.rm = FALSE, args.legend = NULL,
            args.dens = NULL, ...)

Arguments

x

numeric vector of x values.

y

numeric vector of y values (of same length as x).

grp

grouping variable(s), typically factor(s), all of the same length as x.

xlim

the x limits of the plot.

ylim

the y limits of the plot.

col

the colors for lines and points. Uses rainbow() colors by default.

mardens

which marginal densities to plot. Can be set to either just x or y, or both ("all", latter being the default).

pch

a vector of plotting characters or symbols.

pch.cex

magnification to be used for plotting characters relative to the current setting of cex.

main

a main title for the plot, see also title.

na.rm

logical, should NAs be omitted? Defaults to FALSE.

args.legend

list of additional arguments for the legend. args.legend set to NA prevents a legend from being drawn.

args.dens

list of additional arguments to be passed to density. Use args.dens = NA if no density curve should be drawn. The defaults are taken from density.

further arguments are passed to the function plot().

See Also

plot, points, density, layout

Examples

Run this code
# NOT RUN {
# best seen with: x11(7.5, 4.7)

# just one variable with marginal densities
PlotMarDens( y=d.pizza$temperature, x=d.pizza$delivery_min, grp=1
             , xlab="delivery_min", ylab="temperature", col=SetAlpha("brown", 0.4)
             , pch=15, lwd=3
             , panel.first= grid(), args.legend=NA
             , main="Temp ~ delivery"
)

# use a group variable
PlotMarDens( y=d.pizza$temperature, x=d.pizza$delivery_min, grp=d.pizza$area
  , xlab="delivery_min", ylab="temperature", col=c("brown","orange","lightsteelblue")
  , panel.first=list( grid() )
  , main = "temperature ~ delivery_min | area"
)
# reset layout
par(mfrow=c(1,1))
# }

Run the code above in your browser using DataCamp Workspace