stat_function {animint2} | R Documentation |
Superimpose a function.
Description
Superimpose a function.
Usage
stat_function(
mapping = NULL,
data = NULL,
geom = "path",
position = "identity",
...,
fun,
xlim = NULL,
n = 101,
args = list(),
na.rm = FALSE,
show.legend = NA,
inherit.aes = TRUE
)
Arguments
mapping |
Set of aesthetic mappings created by |
data |
The data to be displayed in this layer. There are three options: If A A |
geom |
The geometric object to use display the data |
position |
Position adjustment, either as a string, or the result of a call to a position adjustment function. |
... |
other arguments passed on to |
fun |
function to use |
xlim |
Optionally, restrict the range of the function to this range. |
n |
number of points to interpolate along |
args |
list of additional arguments to pass to |
na.rm |
If |
show.legend |
logical. Should this layer be included in the legends?
|
inherit.aes |
If |
Aesthetics
stat_function
understands the following aesthetics (required aesthetics are in bold):
y
Computed variables
- x
x's along a grid
- y
value of function evaluated at corresponding x
Examples
set.seed(1492)
df <- data.frame(
x = rnorm(100)
)
x <- df$x
base <- ggplot(df, aes(x)) + geom_density()
base + stat_function(fun = dnorm, colour = "red")
base + stat_function(fun = dnorm, colour = "red", args = list(mean = 3))
# Plot functions without data
# Examples adapted from Kohske Takahashi
# Specify range of x-axis
ggplot(data.frame(x = c(0, 2)), aes(x)) +
stat_function(fun = exp, geom = "line")
# Plot a normal curve
ggplot(data.frame(x = c(-5, 5)), aes(x)) + stat_function(fun = dnorm)
# To specify a different mean or sd, use the args parameter to supply new values
ggplot(data.frame(x = c(-5, 5)), aes(x)) +
stat_function(fun = dnorm, args = list(mean = 2, sd = .5))
# Two functions on the same plot
f <- ggplot(data.frame(x = c(0, 10)), aes(x))
f + stat_function(fun = sin, colour = "red") +
stat_function(fun = cos, colour = "blue")
# Using a custom function
test <- function(x) {x ^ 2 + x + 20}
f + stat_function(fun = test)