ggrepel provides geoms for ggplot2 to repel overlapping text labels.
library(ggrepel) ggplot(mtcars, aes(wt, mpg, label = rownames(mtcars))) + geom_text_repel() + geom_point(color = 'red') + theme_classic(base_size = 16)
# The easiest way to get ggrepel is to install it from CRAN: install.packages("ggrepel") # Or get the the development version from GitHub: # install.packages("devtools") devtools::install_github("slowkow/ggrepel")
See the vignette for the code behind these examples:
Please submit an issue to report bugs or ask questions.
Please contribute bug fixes or new features with a pull request to this repository.
An extensible framework for automatically placing direct labels onto multicolor 'lattice' or 'ggplot2' plots. Label positions are described using Positioning Methods which can be re-used across several different plots. There are heuristics for examining "trellis" and "ggplot" objects and inferring an appropriate Positioning Method.
Pretty word clouds.
wordcloud package implements a spiraling algorithm to prevent text
labels from overlapping each other.
Force field simulation of interaction of set of points. Very useful for placing text labels on graphs, such as scatterplots.
I found that functions in the
FField package were not ideal for repelling
overlapping rectangles, so I wrote my own.
See this gist for examples of how to use the