Pixel Filters for 'ggplot2' and 'grid'

Provides a range of filters that can be applied to layers from the 'ggplot2' package and its extensions, along with other graphic elements such as guides and theme elements. The filters are applied at render time and thus uses the exact pixel dimensions needed.


ggfx

Lifecycle:experimental R-CMD-check Codecov testcoverage

ggfx is a (currently experimantal) package that allows the use of various filters and shaders on ggplot2 layers.

Installation

You can install ggfx from CRAN in the usual manner (install.packages('ggfx')) or you can grab the development version directly from github using the devtools package:

# install.packages('devtools')
devtools::install_github('thomasp85/ggfx')

Example

The basic API of ggfx is to provide a range of with_*() modifier functions instead of special versions of common geoms. This means that ggfx will work with any geom from ggplot2 and the extension packages (I think…). An example showing some of the different functionalities are given below. Note that the output is produced with regular geoms.

library(ggplot2)
library(ggfx)
ggplot() +
  as_reference(
    geom_polygon(aes(c(0, 1, 1), c(0, 0, 1)), colour = NA, fill = 'magenta'),
    id = "displace_map"
  ) +
  with_displacement(
    geom_text(aes(0.5, 0.5, label = 'ggfx-ggfx'), size = 25, fontface = 'bold'),
    x_map = ch_red("displace_map"),
    y_map = ch_blue("displace_map"),
    x_scale = unit(0.025, 'npc'),
    id = "text"
  ) +
  with_blend(
    geom_density_2d_filled(aes(rnorm(1e4, 0.5, 0.2), rnorm(1e4, 0.5, 0.2)),
                           show.legend = FALSE),
    bg_layer = "text",
    blend_type = "in",
    id = "blended"
  ) +
  with_shadow("blended", sigma = 3) +
  coord_cartesian(xlim = c(0, 1), ylim = c(0, 1), clip = 'off') +
  labs(x = NULL, y = NULL)

Code of Conduct

Please note that the ggfx project is released with a Contributor Code of Conduct. By contributing to this project, you agree to abide by its terms.

Reference manual

It appears you don't have a PDF plugin for this browser. You can click here to download the reference manual.

install.packages("ggfx")

1.0.3 by Thomas Lin Pedersen, a year ago


https://ggfx.data-imaginist.com, https://github.com/thomasp85/ggfx


Report a bug at https://github.com/thomasp85/ggfx/issues


Browse source code at https://github.com/cran/ggfx


Authors: Thomas Lin Pedersen [aut, cre] (ORCID: , RStudio [cph, fnd]


Documentation:   PDF Manual  


MIT + file LICENSE license


Imports magick, ragg, grid, ggplot2, grDevices, gtable, rlang

Suggests covr, knitr, rmarkdown, farver


Imported by WorldMapR.

Suggested by whitewater.


See at CRAN