Nothing
#' Scatter plot of points
#'
#' Make or add a scatter plot in a manner coordinated with `plotFun`.
#'
#' @param x A formula specifying y ~ x or z ~ x&y
#'
#' @param data Data frame containing the variables to be plotted. If not specified,
#' the variables will be looked up in the local environment
#'
#' @param add If `TRUE`, add points as a new layer to an existing plot.
#' If `NULL`, the value of `under` will be used.
#'
#' @param under If `TRUE`, the new layer will be underneath existing layers.
#'
#' @param panelfun Lattice panel function to be used for adding. Set only if you want something other
#' than a scatter plot. Mainly, this is intended to add new functionality through other functions.
#'
#' @param plotfun Lattice function to be used for initial plot creation. Set only
#' if you want something other than a scatter plot. Mainly, this is intended to add new functionality through
#' other functions.
#'
#' @param \dots additional arguments
#'
#' @param plot a trellis plot, by default the most recently created one. If `add` is `TRUE`,
#' new points will be added as a new layer to `plot`.
#'
#' @return A trellis graphics object
#'
#' @seealso [plotFun()]
#' @examples
#' if (require(mosaicData)) {
#' plotPoints( width ~ length, data=KidsFeet, groups=sex, pch=20)
#' f <- makeFun( lm( width ~ length * sex, data=KidsFeet))
#' plotFun( f(length=length,sex="G")~length, add=TRUE, col="pink")
#' plotFun( f(length=length,sex="B")~length, add=TRUE)
#' }
#' @export
plotPoints <- function( x, data=parent.frame(), add=NULL, under=FALSE,
panelfun=panel.xyplot, plotfun=xyplot, ..., plot=trellis.last.object()
) {
if (is.null(add)) add <- under
if (!add) return(plotfun(x, data=data, ...))
# else we're adding on
rlang::check_installed('latticeExtra')
xpts <- evalSubFormula(rhs(x),data=data)
ypts <- evalSubFormula(lhs(x),data=data)
dots <- list(...)
plot + latticeExtra::layer(
do.call( panelfun, c(list(xpts[[1]],ypts[[1]]),dots)),
data=as.list(environment()),
under=under)
}
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.