position_jitterd: Jitter points based on density to avoid overplotting

View source: R/geom_jitterd.R

position_jitterdR Documentation

Jitter points based on density to avoid overplotting

Description

Counterintuitively adding random noise to a plot can sometimes make it easier to read. Jittering is particularly useful for small datasets with at least one discrete position. Jittering based on density ensures that the amount of random noise only increases as the probability of overlap increases.

Usage

position_jitterd(width = NULL, height = NULL, quad.points = 100, seed = NA)

Arguments

width, height

Amount of vertical and horizontal jitter. The jitter is added in both positive and negative directions, so the total spread is twice the value specified here. However, that amount of jittering depends on the density. The location of highest density in the dataset will have jittering equal to the amount the user specifies, otherwise, jittering is a fraction of that.

If omitted, defaults to 40% of the resolution of the data: this means the jitter values will occupy 80% of the implied bins for the highest density. Categorical data is aligned on the integers, so a width or height of 0.5 will spread the data so it's not possible to see the distinction between the categories.

quad.points

The number of "quadriture points" for the density function. Higher numbers yield a more detailed jittered density plot

seed

A random seed to make the jitter reproducible. Useful if you need to apply the same jitter twice, e.g., for a point and a corresponding label. The random seed is reset after jittering. If 'NA' (the default value), the seed is initialised with a random value; this makes sure that two subsequent calls start with a different seed. Use 'NULL' to use the current random seed and also avoid resetting (the behaviour of ggplot 2.2.1 and earlier).

Value

a geom of jittered data

See Also

Other position adjustments: position_jitterdodged()


dustinfife/flexplot documentation built on Sept. 23, 2024, 9:01 p.m.