Provides a formula interface to 'ggplot2' graphics.
ggformula
introduces a family of graphics functions, gf_point()
,
gf_density()
, and so on, bring the formula interface to ggplot()
. This
captures and extends the excellent simplicity of the lattice
-graphics formula
interface, while providing the intuitive "add this component" capabilities of
ggplot2
.
Installations from CRAN are done in the usual way. The development version of the package is here on GitHub. To install it, use the following commands in your R system.
# Install devtools if necessaryinstall.packages("devtools") # Install ggformuladevtools::install_github("projectMOSAIC/ggformula")
Interactive tutorials demonstrating the package functionality can be run with
learnr::run_tutorial("introduction", package = "ggformula")learnr::run_tutorial("refining", package = "ggformula")
The package vignette is available at https://cran.r-project.org/package=ggformula/vignettes/ggformula.html.
gf_
functions makes it easier to work with data in the global environment.gf_props()
and gf_percents()
added to simplify creating bar graphs on a proportion or percent scale.xlab
, ylab
, title
, subtitle
, and caption
added to gf_
functions. In the case of gf_props()
and gf_percents()
these are prepopulated with defaults of "proportion" and "percent" to give nicer labeling of the plot.weatherData
has been removed since that package is no longer on CRANgf_abline()
, gf_hline()
, and gf_vline()
expand the usable portion of the API.Minor update primarily to support vignette data sets moving from StatisticalModeling
to
mosaicModel
.
gf_fitdistr()
.Mostly minor changes:
For version 0.5, the internals of ggformula
have been largely redesigned to allow
implementation of some new features. The new version relies much less on string parsing.
Some important changes to formula parsing include
attribute:value
and attribute::expression
are no longer supported within the main formula.gf_point(1:10 ~ 1:10)
work, making it simpler to create on the fly plots
without having to build a data frame first.y ~ 1
is equivalent to ~ y
in functions that allow the ~ y
formula shape. Example: gf_histogram(age ~ 1)
and gf_histogram( ~ age)
are equivalentSome new functions have been added
gf_dist()
can plot distributionsgf_dhistogram()
plots density histograms by defaultgf_ash()
creates ASH plotsdf_stats()
has been improved to handle one-sided formulas better.
Secondary layers are now able to inherit both data and formula-defined attributes from the primary layer. Use
inherit = FALSE
if you don't want inheritance. (A few functions have inherit = FALSE
as their default because
it seems unlikely that inheriting will be desireable.)
Version 0.4.0 constitutes a stable beta release. Changes to the API are still possible, but more likely future changes will focus on expansion of the suite of functions supplied, changes to the internal implementation, and improved documentation.
ggformula
from statisticalModeling
.data
may now be an expression (like data = KidsFeet %>% filter(sex == "G")
)gf_histogram()
accepts formulas with shape ~ x
or y ~ x
. This makes it possible to create density
histograms with gf_histogram()
.::
to indicate mapping aesthetics. (:
will autodetect, but only if the value
is the name of a variable in the data set.) This should be considered experimental.gf_lims()
, gf_labs()
, gf_theme()
, gf_facet_grid()
, gf_facet_wrap()
gf_refine()
which can be used to pass by chaining anything that would have been "added" in ``ggplot2`gf_lm()
, which is gf_smooth()
with method = "lm"
gf_dens()
which is gf_line()
with stat = "density"
.