l_ggplot | R Documentation |
Create a loon
widget with ggplot
syntax
l_ggplot(data = NULL, mapping = aes(), ..., environment = parent.frame())
data |
Default dataset to use for plot. If not already a data.frame, will be converted to one by fortify(). If not specified, must be supplied in each layer added to the plot. |
mapping |
Default list of aesthetic mappings to use for plot. If not specified, must be supplied in each layer added to the plot. |
... |
Other arguments passed on to methods. Not currently used. |
environment |
DEPRECATED. Used prior to tidy evaluation. |
function l_ggplot()
wraps function ggplot()
with assigning an additional class "l_ggplot"
to the output. The returned object is called an l_ggplot
object.
To draw a ggplot
object, S3 method print.ggplot
will be rendered
so that a static graphic is displayed. While, for an l_ggplot()
object,
S3 method print.l_ggplot
will be rendered
which will return an interactive loon
widget.
It will return an l_ggplot
object with class c("l_ggplot", "gg", "ggplot")
.
Then print a loon
plot automatically.
ggplot
, ggplot2loon
, print.l_ggplot
loon.ggplot
if(interactive()) { p <- l_ggplot(mpg, aes(displ, cty)) + geom_point( size = 4, mapping = aes(color = factor(cyl)) ) # p is an `l_ggplot` object, `print.l_ggplot(p)` will be called automatically. # Then, at printing time, an `l_ggplot` object will be transformed to a `loon` widget p ## Not run: # Assign a widget from current path # suppose the path of `p` is '.l0.ggplot' q <- l_getFromPath('.l0.ggplot') # q is a `loon` widget q ## End(Not run) # An alternative way to return a real loon widget from `p` (a `l_ggplot` object) # is to call the function `loon.ggplot()`. q <- loon.ggplot(p) q # pipe more components p + facet_grid(rows = vars(drv)) + linking(linkingGroup = "mpg") + ggtitle("displ versus cty") # a linked bar plot l_hist(mpg$class, linkingGroup = "mpg") # a 3D object # press the button key `R` to rotate the plot l_ggplot(mtcars, mapping = aes(x = wt, y = hp, z = drat)) + geom_point(size = 4) + scale_multi() }
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.