ggplot2
is a R
package dedicated to data visualization. It can greatly improve the quality and aesthetics of your graphics, and will
make you much more efficient in creating them.ggplot2
allows to build almost any type of chart. The R graph
ggplot2
examples.ggplot2
tips that you can apply to any chart, like customizing a title, adding annotation, or using faceting.
ggplot2
, a
good starting point is probably this online course.
geom
ggplot2
builds charts through layers using geom_
functions. Here is a list of the different available geoms. Click one to see an example using it.
Annotation is a key step in data visualization. It allows to highlight the main message of the chart, turning a messy figure in an insightful medium. ggplot2
offers many function for this purpose, allowing to add all sorts of text and shapes.
Marginal plots are not natively supported by ggplot2
, but their realisation is straightforward thanks to the ggExtra
library as illustrated in graph #277.
ggplot2
chart appearanceThe theme()
function of ggplot2
allows to customize the chart appearance. It controls 3 main types of components:
ggplot2
titleThe ggtitle()
function allows to add a title to the chart. The following post will guide you through its usage, showing how to control title main features: position, font, color, text and more.
ggplot2
If you don't want your plot to look like any others, you'll definitely be interested in using custom
fonts for your title and labels! This is totally possible thanks to 2 main packages: ragg
and showtext
. The
blog-post below should help you using any font in minutes.
facet_wrap()
and facet_grid()
Small multiples is a very powerful dataviz technique. It split the chart window in many small similar charts: each represents a specific group of a categorical variable. The following post describes the main use cases using facet_wrap()
and facet_grid()
and should get you started quickly.
It is possible to customize any part of a ggplot2
chart thanks to the theme()
function. Fortunately, heaps of pre-built themes are available, allowing to get a good style with one more line of code only. Here is a glimpse of the available themes. See code
plotly
: turn your ggplot
interactiveAnother awesome feature of ggplot2
is its link with the plotly
library. If you know how to make a ggplot2
chart, you are 10 seconds away to rendering an interactive version. Just call the ggplotly()
function, and you’re done. Visit the interactive graphic section of the gallery for more.
library(ggplot2) library(plotly) library(gapminder) p <- gapminder %>% filter(year==1977) %>% ggplot( aes(gdpPercap, lifeExp, size = pop, color=continent)) + geom_point() + theme_bw() ggplotly(p)
← this chart is interactive: hover, drag, zoom, export and more.
ggplot2
possibilitiesEach section of the gallery provides several examples implemented with ggplot2
. Here is an overview of my favorite examples:
Sometimes programming can be used to generate figures that are aestetically pleasing, but don't bring any insight. Here are a few pieces of data art built from R and ggplot2. Visit data-to-art.com for more.