The hardware and bandwidth for this mirror is donated by dogado GmbH, the Webhosting and Full Service-Cloud Provider. Check out our Wordpress Tutorial.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]dogado.de.

Type: Package
Title: Scales that Focus Specific Levels in your ggplot()
Version: 1.0.1
BugReports: https://github.com/Freguglia/ggfocus/issues
URL: https://github.com/Freguglia/ggfocus
Description: A 'ggplot2' extension that provides tools for automatically creating scales to focus on subgroups of the data plotted without losing other information.
License: GPL-3
Encoding: UTF-8
RoxygenNote: 7.3.2
Depends: R (≥ 4.1.0), ggplot2
Imports: dplyr, rlang, RColorBrewer
Suggests: knitr, rmarkdown, maps, ggrepel, testthat (≥ 3.0.0)
VignetteBuilder: knitr
Config/testthat/edition: 3
NeedsCompilation: no
Packaged: 2025-09-02 20:32:41 UTC; victor
Author: Victor Freguglia [aut, cre]
Maintainer: Victor Freguglia <victorfreguglia@gmail.com>
Repository: CRAN
Date/Publication: 2025-09-02 20:50:19 UTC

Focus scales for 'ggplot' objects

Description

Scale that focus on specific levels.

Usage

scale_alpha_focus(focus_levels, alpha_focus = 1, alpha_other = 0.2)

scale_color_focus(
  focus_levels,
  color_focus = NULL,
  color_other = "gray",
  palette_focus = "Set1"
)

scale_fill_focus(
  focus_levels,
  color_focus = NULL,
  color_other = "gray",
  palette_focus = "Set1"
)

scale_linetype_focus(focus_levels, linetype_focus = 1, linetype_other = 3)

scale_shape_focus(focus_levels, shape_focus = 8, shape_other = 1)

scale_size_focus(focus_levels, size_focus = 3, size_other = 1)

Arguments

focus_levels

character vector with levels to focus on.

alpha_focus

'alpha' value for focused levels. Defaults to 1.

alpha_other

'alpha' value for other levels. Defaults to 0.05.

color_focus

color(s) for focused levels (a single value or a vector with the same length as the number of highlighted levels).

color_other

color for other levels.

palette_focus

If 'color_focus' is not specified, provide a pelette from RColorBrewer to pick colors.

linetype_focus

vector of 'linetype' value(s) for focused levels with length 1 or equal to 'focus_levels'. Defaults to 1.

linetype_other

'linetype' value for other levels. Defaults to 3.

shape_focus

'shape' value for focused levels. Defaults to 8.

shape_other

'shape' value for other levels. Defaults to 1.

size_focus

'size' value for focused levels. Defaults to 3.

size_other

'size' value for other levels. Defaults to 1.

Note

Use RColorBrewer::display.brewer.all() to see the palettes available.

Examples

ggplot(iris, aes(x = Petal.Length, y = Sepal.Length, alpha = Species)) +
 geom_point() +
 scale_alpha_focus(focus_levels = "versicolor")


ggplot(iris, aes(x = Petal.Length, y = Sepal.Length, color = Species)) +
 geom_point() +
 scale_color_focus(focus_levels = "setosa", color_focus = "red")

ggplot(iris, aes(x = Petal.Length, y = Sepal.Length, color = Species)) +
 geom_point() +
 scale_color_focus(focus_levels = c("setosa", "virginica"), color_focus = c("red", "blue"))

ggplot(mtcars, aes(x = wt, y = mpg, color = rownames(mtcars))) +
 geom_point() +
 scale_color_focus(focus_levels = c("Mazda RX4", "Merc 230"), palette_focus = "Set2")

ggplot(iris,aes(x = Petal.Length, group = Species, fill = Species)) +
  geom_histogram() +
  scale_fill_focus(focus_levels = "versicolor", color_focus = "red")

ggplot(iris,aes(x = Petal.Length, y = Sepal.Length, shape = Species)) +
 geom_point() +
 scale_shape_focus(focus_levels = "versicolor")


ggplot(iris,aes(x = Petal.Length, y = Sepal.Length, size = Species)) +
 geom_point() +
 scale_size_focus(focus_levels = "versicolor")


These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.
Health stats visible at Monitor.