aes_: Define aesthetic mappings from strings, or quoted calls and...

View source: R/aes.r

aes_R Documentation

Define aesthetic mappings from strings, or quoted calls and formulas.


Aesthetic mappings describe how variables in the data are mapped to visual properties (aesthetics) of geoms. aes uses non-standard evaluation to capture the variable names. aes_ and aes_string require you to explicitly quote the inputs either with "" for aes_string(), or with quote or ~ for aes_(). (aes_q is an alias to aes_)


aes_(x, y, ...)

aes_string(x, y, ...)

aes_q(x, y, ...)


x, y, ...

List of name value pairs. Elements must be either quoted calls, strings, one-sided formulas or constants.


It's better to use aes_q(), because there's no easy way to create the equivalent to aes(colour = "my colour") or aes{x = `X$1`} with aes_string().

aes_string and aes_ are particularly useful when writing functions that create plots because you can use strings or quoted names/calls to define the aesthetic mappings, rather than having to use substitute to generate a call to aes().

See Also



# Three ways of generating the same aesthetics
aes(mpg, wt, col = cyl)
aes_(quote(mpg), quote(wt), col = quote(cyl))
aes_(~mpg, ~wt, col = ~cyl)
aes_string("mpg", "wt", col = "cyl")

# You can't easily mimic these calls with aes_string
aes(`$100`, colour = "smooth")
aes_(~ `$100`, colour = "smooth")
# Ok, you can, but it requires a _lot_ of quotes
aes_string("`$100`", colour = '"smooth"')

# Convert strings to names with
var <- "cyl"
aes(col = x)
aes_(col =

animint2 documentation built on Sept. 16, 2022, 1:06 a.m.

Related to aes_ in animint2...