One-dimensional ranged data in the x-direction is segregated in the y-direction such that no overlap in twodimensional space occurs. This positioning works best when no relevant information is plotted in the y-direction.
position_disjoint_ranges(extend = 1, stepsize = 1, dir = NULL)
extend | a |
---|---|
stepsize | a |
dir | A |
A Position
ggproto object.
An object is considered disjoint from a second object when the range
between their xmin
and xmax
coordinates don't overlap.
Objects that overlap are assigned to different bins in the y-direction,
whereby lower bins are filled first. This way, information in the
x-direction is preserved and different objects can be discerned.
Note that this positioning is only particularly useful when y-coordinates
do not encode relevant information. Geoms that pair well with this
positioning are geom_rect
,
geom_tile
.
This positioning function was inspired by the disjointBins()
function in the IRanges
package, but has been written such that it
accepts any numeric input next to solely integer input.
# Even though geom_tile() is parametrised by middle-x values, it is # internally converted to xmin, xmax, ymin, ymax parametrisation so the # positioning still works. ggplot() + geom_tile(aes(x = rnorm(200), y = 0), width = 0.2, height = 0.9, position = position_disjoint_ranges(extend = 0.1))