A curated list of awesome ggplot2 tutorials, packages etc.
# Awesome `ggplot2` [![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/sindresorhus/awesome) [<img src="https://raw.githubusercontent.com/rstudio/hex-stickers/master/PNG/ggplot2.png" align="right" width="150">](https://ggplot2.tidyverse.org/)

# General

* [Official website](https://ggplot2.tidyverse.org/)
  * [Reference](https://ggplot2.tidyverse.org/reference/index.html)
* [A List of ggplot2 extensions](https://exts.ggplot2.tidyverse.org/)
* [Cheat Sheet: Data Visualization with ggplot2](https://rstudio.com/wp-content/uploads/2015/03/ggplot2-cheatsheet.pdf)

# Persons (+ twitter)

* [Hadley Wickham](http://hadley.nz/) ([@hadleywickham](https://twitter.com/hadleywickham))
* [Kieran Healy](https://kieranhealy.org/) ([@kjhealy](https://twitter.com/kjhealy/))
* [Claus Wilke](https://serialmentor.com/) ([@ClausWilke](https://twitter.com/ClausWilke))
* [Thomas Lin Pedersen](https://www.data-imaginist.com/) ([@thomasp85](https://twitter.com/thomasp85))
* Winston Chang ([@winston_chang](https://twitter.com/winston_chang))
* [Lionel Henry](https://github.com/lionel-) ([@_lionelhenry](https://twitter.com/_lionelhenry))
* [Kara Woo](https://karawoo.com/) ([@kara_woo](https://twitter.com/kara_woo))
* [Hiroaki Yutani](https://yutani.rbind.io/) ([@yutannihilat_en](https://twitter.com/yutannihilat_en))
* [Dewey Dunnington](https://fishandwhistle.net/) ([@paleolimbot](https://twitter.com/paleolimbot))

# R packages

## Plot layers

* {[biscale](https://chris-prener.github.io/biscale/)}: Bivariate Mapping with ggplot2
* {[calendR](https://github.com/R-CoderDotCom/calendR)}: Fully customizable ready to print monthly and yearly calendars made with ggplot2
* {[complex-upset](https://krassowski.github.io/complex-upset/)}: A library for creating complex UpSet plots with ggplot2 geoms
* {[corrmorant](https://github.com/r-link/corrmorant)}: R package for flexible correlation matrices based on ggplot2
* {[deeptime](https://github.com/willgearty/deeptime)}: Plotting Tools for Anyone Working in Deep Time
* {[easyalluvial](https://erblast.github.io/easyalluvial/)}: Create alluvial plots with a single line of code
* {[econocharts](https://r-coder.com/economics-charts-r/)}: Economics charts in R using ggplot2
* {[ganttrify](https://ganttrify.europeandatajournalism.eu/)}: Create beautiful Gantt charts with ggplot2
* {[geomtextpath](https://allancameron.github.io/geomtextpath/)}: Create curved text paths in ggplot2
* {[ggalignment](https://github.com/aftonsteps/ggalignment)}: R package for creating D&D alignment charts
* {[ggalluvial](http://corybrunson.github.io/ggalluvial/)}: ggplot2 extension for alluvial plots
* {[ggalt](https://github.com/hrbrmstr/ggalt)}: Extra Coordinate Systems, Geoms, Statistical Transformations & Scales for 'ggplot2'
* {[ggambit](https://github.com/cj-holmes/ggambit)}: Visualise FEN chess positions with ggplot2
* {[gganatogram](https://github.com/jespermaag/gganatogram)}: Create anatograms using ggplot2
* {[ggarchery](https://github.com/mdhall272/ggarchery)}: Flexible segment geoms with arrows for ggplot2
* {[ggbeeswarm](https://github.com/eclarke/ggbeeswarm)}: Column scatter / beeswarm-style plots in ggplot2
* {[ggblanket](https://davidhodge931.github.io/ggblanket/)}: Simplify ggplot2 visualisation
* {[ggblend](https://mjskay.github.io/ggblend/)}: Support for blend modes in ggplot2
* {[ggblur](https://github.com/coolbutuseless/ggblur)}: Blurry Point Geom for ggplot2
* {[ggborderline](https://wurli.github.io/ggborderline)}: Provides a set of geoms to make line plots a little bit nicer
* {[ggbraid](https://nsgrantham.github.io/ggbraid/)}: Braid two lines and a ribbon in ggplot2
* {[ggbrain](https://michaelhallquist.github.io/ggbrain/)}: R package for creating plots of brains using ggplot
* {[ggbump](https://github.com/davidsjoberg/ggbump)}: A geom for ggplot to create bump plots
* {[ggcalendar](https://github.com/EvaMaeRey/ggcalendar)}: x and y position as days in month
* {[ggchicklet](https://cinc.rud.is/web/packages/ggchicklet/)}: Create Chicklet (Rounded Segmented Column) Charts
* {[ggcorrplot](https://rpkgs.datanovia.com/ggcorrplot/)}: Visualization of a correlation matrix using ggplot2
* {[ggcorr](https://briatte.github.io/ggcorr/)}: Correlation matrixes with ggplot2
* {[ggcorset](https://github.com/kbelisar/ggcorset)}: Introducing corset plots
* {[ggpcp](https://cran.r-project.org/web/packages/ggpcp/index.html)}: Parallel Coordinate Plots in the 'ggplot2' Framework
* {[ggdemetra](https://aqlt.github.io/ggdemetra/)}: ggplot2 extension for seasonal and trading day adjustment with RJDemetra
* {[ggdensity](https://jamesotto852.github.io/ggdensity/)}: An R package for interpretable visualizations of density estimates
* {[ggeconodist](https://github.com/hrbrmstr/ggeconodist)}: Create Diminutive Distribution Charts
* {[ggdag](https://ggdag.malco.io/)}: An R Package for visualizing and analyzing causal directed acyclic graphs
* {[ggdist](https://mjskay.github.io/ggdist/)}: Visualizations of distributions and uncertainty
* {[ggExtra](https://github.com/daattali/ggExtra)}: Add marginal histograms to ggplot2, and more ggplot2 enhancements
* {[ggfreehand](https://github.com/dgrtwo/ggfreehand)}: Add freehand circles to ggplot2 graphs
* {[gggenomes](https://thackl.github.io/gggenomes/)}: A grammar of graphics for comparative genomics
* {[gggibbous](https://github.com/mnbram/gggibbous)}: Moon charts, a pie chart alternative, for ggplot2
* {[gghalves](https://erocoar.github.io/gghalves/)}: Easy half-half geoms in ggplot2
* {[gghdr](https://github.com/Sayani07/gghdr)}: Plots of highest density regions (HDR) for ggplot2
* {[gghilbertstrings](https://sumidu.github.io/gghilbertstrings/)}: Create Hilbert curves in ggplot2
* {[ggHoriPlot](https://rivasiker.github.io/ggHoriPlot/)}: build horizon plots in ggplot2
* {[ggimg](https://github.com/statsmaths/ggimg)}: Graphics Layers for Plotting Image Data with ggplot2
* {[ggkeyboard](https://github.com/sharlagelfand/ggkeyboard)}: Make a keyboard using ggplot2
* {[ggmacc](https://github.com/aj-sykes92/ggmacc)}: R package repository for building marginal abatement cost curves with ggplot2
* {[ggmosaic](https://haleyjeppson.github.io/ggmosaic/)}: Mosaicplots in the ggplot2 framework
* {[ggmsa](http://yulab-smu.top/ggmsa/)}: a visual exploration tool for multiple sequence alignment and associated data 
* {[ggmulti](https://github.com/great-northern-diver/ggmulti)}: Package for adding some multivariate visualizations to ggplot2
* {[ggpackets](https://dgkf.github.io/ggpackets/)}: Cleaner composition of ggplot layers
* {[ggparliament](https://github.com/RobWHickman/ggparliament)}: Simple parliament plots using ggplot2
* {[ggpointdensity](https://github.com/LKremer/ggpointdensity)}: A Cross Between a Scatter Plot and a 2D Density Plot
* {[ggpointless](https://flrd.github.io/ggpointless/)}: A point layer to emphasize some observations
* {[ggpolar](https://github.com/ShixiangWang/polar)}: Dots and Their Connections in Polar Coordinate System
* {[ggsector](https://github.com/yanpd01/ggsector)}: Use R language to draw sector
* {[ggshadow](https://github.com/marcmenem/ggshadow)}: Shadow Geoms for ggplot2
* {[ggshakeR](https://github.com/abhiamishra/ggshakeR)}: An analysis and visualization R package that works with publicly available soccer data
* {[ggsoccer](https://torvaney.github.io/ggsoccer/)}: Plot soccer event data in R/ggplot2
* {[ggspectra](https://bitbucket.org/aphalo/ggspectra/)}: Plotting spectra with ggplot2 
* {[ggstamp](https://evamaerey.github.io/ggstamp/)}: stamp_* as an API for annotation layers 
* {[ggstance](https://github.com/lionel-/ggstance)}: Horizontal ggplot2 components
* {[ggpage](https://emilhvitfeldt.github.io/ggpage/)}: Creates Page Layout Visualizations in R
* {[ggplate](https://jpquast.github.io/ggplate/)}: Create Layout Plots of Biological Culture Plates and Microplates
* {[ggpol](https://github.com/erocoar/ggpol)}: Parliament diagrams and more for ggplot2
* {[ggpolypath](https://mdsumner.github.io/ggpolypath/)}: Polygons with holes for ggplot2
* {[ggpp](https://github.com/aphalo/ggpp)}: Grammar of graphics extensions to 'ggplot2'
* {[ggpubr](https://rpkgs.datanovia.com/ggpubr/)}: 'ggplot2' Based Publication Ready Plots
* {[ggqr](https://github.com/coolbutuseless/ggqr)}: ggplot2 geom for QR codes
* {[ggradar](https://github.com/ricardo-bion/ggradar)}: radar charts with ggplot2
* {[ggraph](https://ggraph.data-imaginist.com/)}: A grammar of graphics for relational data
* {[ggrastr](https://github.com/VPetukhov/ggrastr)}: Raster geoms for ggplot2
* {[ggrepel](https://ggrepel.slowkow.com/)}: Repel overlapping text labels away from each other
* {[ggreverse](https://github.com/coolbutuseless/ggreverse)}: Reverse a ggplot object back into code
* {[ggrgl](https://coolbutuseless.github.io/package/ggrgl/)}: 3D Graphics Using the Grammar of Graphics
* {[ggridges](https://wilkelab.org/ggridges/)}: Ridgeline plots in ggplot2
* {[ggsankey](https://github.com/davidsjoberg/ggsankey)}: The goal of ggsankey is to make beautiful sankey, alluvial and sankey bump plots in ggplot2
* {[ggseqplot](https://maraab23.github.io/ggseqplot/)}: Render Sequence Plots using 'ggplot2'
* {[ggside](https://github.com/jtlandis/ggside)}: ggplot2 extension allowing for plotting various geometries as side panels
* {[ggsignif](https://github.com/const-ae/ggsignif)}: Easily add significance brackets to your ggplots
* {[ggstraw](https://github.com/nacnudus/ggstraw)}: geom_straw for ggplot2
* {[ggstream](https://github.com/davidsjoberg/ggstream)}: A package to make streamplots
* {[ggsvg](https://github.com/coolbutuseless/ggsvg)}: Use SVG images as ggplot points
* {[ggtda](https://github.com/rrrlw/ggtda)}: ggplot2 extension to visualize persistent homology
* {[ggtern](http://www.ggtern.com/)}: An extension to ggplot2, for the creation of ternary diagrams
* {[ggtikz](https://github.com/osthomas/ggtikz)}: Add TikZ annotations with absolute data or relative plot coordinates to ggplots
* {[ggTimeSeries](https://github.com/AtherEnergy/ggTimeSeries)}: Time series visualisation
* {[ggthreed](https://github.com/coolbutuseless/ggthreed)}: 3d geoms and stats for ggplot
* {[ggtree](https://github.com/YuLab-SMU/ggtree)}: Visualization and annotation of phylogenetic trees
* {[ggtrendline](https://github.com/PhDMeiwp/ggtrendline)}: An R Package for Adding Trendline and Confidence Interval to "ggplot"
* {[ggvenn](https://github.com/yanlinlin82/ggvenn)}: Venn Diagram by ggplot2, with really easy-to-use API
* {[ggVennDiagram](https://github.com/gaospecial/ggVennDiagram)}: A 'ggplot2' implement of Venn Diagram
* {[ggvoronoi](https://github.com/garretrc/ggvoronoi/)}: Easy Voronoi diagram heatmaps with ggplot2
* {[ggvwline](https://github.com/Hy4m/ggvwline)}: Layer functions for drawing variable-width curves
* {[ggwaffle](https://liamgilbey.github.io/ggwaffle/)}: Creating waffle charts in a ggplot friendly way
* {[ggweekly](https://github.com/gadenbuie/ggweekly)}: Easy, printable, custom calendars and week planners
* {[ggwordcloud](https://lepennec.github.io/ggwordcloud/)}: A word cloud geom for ggplot2
* {[ggxmean](https://github.com/EvaMaeRey/ggxmean)}: Put a vertical line at the mean of x w/ geom_xmean() and do other stuff
* {[likert](https://jbryer.github.io/likert/)}: Analysis and Visualization Likert Items
* {[linkET](https://github.com/Hy4m/linkET)}: Toolbox for heatmap and mantel test plot.
* {[parttree](https://github.com/grantmcdermott/parttree)}: Simple package for plotting decision tree partitions in R
* {[patternplot](https://cran.r-project.org/web/packages/patternplot/)}: Versatile Pie Charts, Ring Charts, Bar Charts and Box Plots using Patterns, Colors and Images
* {[scattermore](https://github.com/exaexa/scattermore)}: very fast scatterplots for R
* {[see](https://easystats.github.io/see/)}: Visualisation toolbox for beautiful and publication-ready figures
* {[shadowtext](https://github.com/GuangchuangYu/shadowtext)}: shadow text for grid and ggplot2 
* {[treemapify](http://wilkox.org/treemapify/)}: Draw treemaps in ggplot2
* {[vistime](https://shosaco.github.io/vistime/)}: Pretty timelines in R
* {[waffle](https://github.com/hrbrmstr/waffle)}: Make waffle (square pie) charts in R
* {[WVPlots](https://winvector.github.io/WVPlots/)}: Pre-packaged plots in R

## Themes and aesthetics

* {[bbplot](https://github.com/bbc/bbplot)}: R package that helps create and export ggplot2 charts in the style used by the BBC News data team
* {[ButterflyColors](https://junqueiragaabi.github.io/ButterflyColors/)}: Color palette for data visualization based on butterfly species
* {[cols4all](https://github.com/mtennekes/cols4all)}: Colors for all (R package)
* {[cyberpunk](https://github.com/r-coderdotcom/cyberpunk)}: A function to create cyberpunk-style graphs with R based on ggplot2
* {[ggcharts](https://github.com/thomas-neitmann/ggcharts)}: Get You to Your Desired Plot Faster
* {[ggcute](https://github.com/sharlagelfand/ggcute/)}: Cute things for ggplot2
* {[ggdark](https://github.com/nsgrantham/ggdark)}: Dark mode for ggplot2 themes
* {[ggCyberPunk](https://github.com/delabj/ggCyberPunk)}: Working on creating a similar cyberpunk geom for ggplot
* {[ggeasy](https://github.com/jonocarroll/ggeasy)}: Easy Access to 'ggplot2' Commands
* {[ggedit](https://github.com/yonicd/ggedit)}: Interactively edit ggplot layer aesthetics and theme definitions
* {[ggfittext](https://github.com/wilkox/ggfittext)}: ggplot2 geoms to fit text into boxes
* {[ggfx](https://github.com/thomasp85/ggfx)}: ggfx is a (currently experimantal) package that allows the use of various filters and shaders on ggplot2 layers
* {[gglaplot](https://github.com/Greater-London-Authority/gglaplot)}: Makes graphics in the GLA style using ggplot2
* {[ggnewscale](https://github.com/eliocamp/ggnewscale)}: Multiple Fill and Color Scales in 'ggplot2'
* {[ggokabeito](https://malcolmbarrett.github.io/ggokabeito/)}: Colorblind-friendly, qualitative Okabe-Ito Scales for ggplot2 and ggraph 
* {[ggpomological](https://www.garrickadenbuie.com/project/ggpomological/)}: Pomological plot theme for ggplot2
* {[ggprism](https://csdaw.github.io/ggprism/)}: ggplot2 extension inspired by GraphPad Prism
* {[ggrough](https://xvrdm.github.io/ggrough/)}: Convert ggplot2 chart to roughjs
* {[ggsci](https://nanx.me/ggsci/)}: Scientific journal and sci-fi themed color palettes for ggplot2
* {[ggseg](https://ggseg.github.io/ggseg/)}: Plotting tool for brain atlases, in ggplot
* {[ggstar](https://github.com/xiangpin/ggstar/)}: Star layer for ggplot2
* {[ggtech](https://github.com/ricardo-bion/ggtech)}: ggplot2 tech themes, scales, and geoms
* {[ggtext](https://github.com/wilkelab/ggtext)}: Improved text rendering support for ggplot2
* {[ggtextures](https://github.com/clauswilke/ggtextures)}: Drawing textured rectangles and bars with ggplot
* {[ggthemes](https://jrnold.github.io/ggthemes/)}: Additional themes, scales, and geoms for ggplot2
* {[ggthemr](https://github.com/cttobin/ggthemr)}: Themes for ggplot2
* {[harrypotter](https://github.com/aljrico/harrypotter)}: Harry Potter inspired palette for R
* {[hrbrthemes](https://github.com/hrbrmstr/hrbrthemes)}: Opinionated, typographic-centric ggplot2 themes and theme components
* {[mdthemes](https://github.com/thomas-neitmann/mdthemes)}: Markdown Themes for 'ggplot2'
* {[MexBrewer](https://paezha.github.io/MexBrewer/)}: Color Palettes Inspired by Works Mexican Muralists
* {[monochromeR](https://github.com/cararthompson/monochromeR)}: A package for creating monochrome colour palettes and easily converting rgba values to hex codes
* {[NatParksPalettes](https://github.com/kevinsblake/NatParksPalettes)}: Color palette package inspired by National Parks
* {[paletteer](https://emilhvitfeldt.github.io/paletteer/)}: Collection of most color palettes in a single R package
* {[pilot](https://github.com/olihawkins/pilot)}: A minimal ggplot2 theme with an accessible discrete color palette
* {[peRReo](https://github.com/jbgb13/peRReo)}: R color palettes inspired by reggaeton and latin albums
* {[PrettyCols](https://nrennie.github.io/PrettyCols/)}: R package containing pretty colour palettes.
* {[rockthemes](https://johnmackintosh.com/rockthemes/)}: R colour palettes based on classic rock albums and some other ones
* {[savonliquide](https://github.com/feddelegrand7/savonliquide)}: Check for Color Contrast Accessibility in R
* {[soilpalettes](https://github.com/kaizadp/soilpalettes)}: R color palettes inspired by soil profiles
* {[thematic](https://rstudio.github.io/thematic/)}: Unified and automatic theming of ggplot2, lattice, and base R graphics
* {[tvthemes](https://ryo-n7.github.io/tvthemes/)}: ggplot2 themes and palettes based on your favorite TV shows
* {[urbnthemes](https://urbaninstitute.github.io/urbnthemes/index.html)}: Urban Institute's ggplot2 theme and tools

## Presentation, composition and scales

* {[camcorder](https://github.com/thebioengineer/camcorder)}: Record plots generated during an R session and replay as a gif!
* {[cowplot](https://wilkelab.org/cowplot/)}: Streamlined Plot Theme and Plot Annotations for ggplot2
* {[deeptime](https://github.com/willgearty/deeptime)}: Plotting Tools for Anyone Working in Deep Time
* {[facetious](https://github.com/coolbutuseless/facetious)}: Home to some alternate facetting for ggplot2 
* {[facetscales](https://github.com/zeehio/facetscales)}: facet_grid with different scales per facet
* {[geofacet](https://hafen.github.io/geofacet/)}: R package for geographical faceting with ggplot2
* {[gganimate](https://gganimate.com/)}: A Grammar of Animated Graphics
* {[ggannotate](https://github.com/MattCowgill/ggannotate)}: Interactively annotate ggplots
* {[ggbillboard](https://github.com/nacnudus/ggbillboard)}: A package to fill vacant ggplot2 facets with images
* {[ggbreak](https://github.com/YuLab-SMU/ggbreak)}: Set Axis Break for 'ggplot2'
* {[ggcolormeter](https://github.com/yjunechoe/ggcolormeter)}: A ggplot2 color/fill legend guide extension in the style of a dashboard meter
* {[ggfocus](https://github.com/Freguglia/ggfocus)}: A 'ggplot2' extension that provides tools for automatically creating scales to focus on subgroups
* {[ggforce](https://ggforce.data-imaginist.com/)}: Accelerating ggplot2
* {[ggformula](http://www.mosaic-web.org/ggformula/)}: Provides a formula interface to 'ggplot2' graphics
* {[gggrid](https://www.stat.auckland.ac.nz/~paul/Reports/gggrid/gggrid.html)}: Accessing 'grid' from 'ggplot2'
* {[ggh4x](https://github.com/teunbrand/ggh4x)}: ggplot extension: options for tailored facets, multiple colourscales and miscellaneous
* {[gghighlight](https://yutannihilation.github.io/gghighlight/)}: Highlight points and lines in ggplot2
* {[ggiraph](https://davidgohel.github.io/ggiraph/)}: Make 'ggplot' Graphics Interactive
* {[gglabeller](https://github.com/AliciaSchep/gglabeller)}: Shiny gadget for labeling points on ggplot
* {[ggplotify](https://github.com/GuangchuangYu/ggplotify)}: Convert plot to grob and ggplot object
* {[ggtips](https://github.com/Roche/ggtips)}: Adds interactive tooltip boxes to ggplots (standalone or rendered in Shiny)
* {[ggtrace](https://yjunechoe.github.io/ggtrace/)}: Programmatically inspect, debug, and manipulate ggproto methods
* {[ggtrack](https://mrjoh3.github.io/ggtrack/)}: Add tracking banner to plots
* {[ggupset](https://github.com/const-ae/ggupset)}: Combination matrix axis for 'ggplot2' to create 'UpSet' plots
* {[ggview](https://github.com/idmn/ggview)}: Ggplot picture previewer
* {[jjAnno](https://github.com/junjunlab/jjAnno)}: An annotation package for ggplot plot
* {[patchwork](https://patchwork.data-imaginist.com/)}: The Composer of ggplots
* {[plotly](https://github.com/ropensci/plotly)}: An interactive graphing library for R
* {[scales](https://scales.r-lib.org/)}: Tools for ggplot2 scales
* {[showtext](https://github.com/yixuan/showtext)}: Using Fonts More Easily in R Graphs
* {[tagger](https://eliocamp.github.io/tagger/)}: Add tags to ggplot2 facets

## Network
* {[geomnet](http://sctyner.github.io/geomnet/)}: Network visualization in the ggplot2 framework
* {[ggnet](https://briatte.github.io/ggnet/)}: Network visualization with ggplot2
* {[ggnetwork](https://briatte.github.io/ggnetwork/)}: Geoms to plot networks with ggplot2
* {[graphlayouts](http://graphlayouts.schochastics.net/)}: New layout algorithms for network visualizations in R 
* {[qgraph](https://cran.r-project.org/web/packages/qgraph/index.html)}: Graph Plotting Methods, Psychometric Data Visualization and Graphical Model Estimation

## Spatial

* {[eumaps](https://github.com/jfjelstul/eumaps)}: An R package that provides easy-to-use tools for making professional-quality choropleth maps of the European Union (EU)
* {[ggcounty](https://github.com/hrbrmstr/ggcounty)}: Generate ggplot2 geom_map county maps
* {[ggmap](https://github.com/dkahle/ggmap)}: A package for plotting maps in R with ggplot2
* {[ggOceanMaps](https://github.com/MikkoVihtakari/ggOceanMaps/)}: Plot oceanographic research data on maps using ggplot2 
* {[ggsflabel](https://yutannihilation.github.io/ggsflabel/)}: Labels for 'sf' with 'ggplot2'
* {[ggsn](http://oswaldosantos.github.io/ggsn/)}: R package to add north symbols and scale bars to maps created with ggplot or ggmap
* {[ggspatial](https://paleolimbot.github.io/ggspatial/)}: Enhancing spatial visualization in ggplot2
* {[layer](https://github.com/marcosci/layer)}: Create stacked tilted maps
* {[mapSpain](https://ropenspain.github.io/mapSpain/)}: Administrative Boundaries of Spain
* {[metR](https://eliocamp.github.io/metR/)}: Tools for Easier Analysis of Meteorological Fields
* {[mxmaps](https://www.diegovalle.net/mxmaps/)}: An R package for making maps of Mexico
* {[plotDK](https://github.com/kristianSN/plotDK)}: Plot Summary Statistics as Choropleth Maps of Danish Administrative Areas
* {[rayshader](https://github.com/tylermorganwall/rayshader)}: R Package for 2D and 3D mapping and data visualization 
* {[starBliss](https://github.com/benyamindsmith/starBliss)}: Create beautiful, print quality maps of the night sky in R
* {[sugarbag](https://srkobakian.github.io/sugarbag/)}: An R package to create tessellated hexagon maps of Australia
* {[tidyterra](https://dieghernan.github.io/tidyterra/)}: tidyverse and ggplot2 methods for terra spatial objects
* {[urbnmapr](https://urbaninstitute.github.io/urbnmapr/index.html)}: US state and county maps with Alaska and Hawaii

## Icons, patterns and images

* {[cropcircles](https://github.com/doehm/cropcircles)}: Crop an image into a circle with a transparent background
* {[emoGG](https://github.com/dill/emoGG)}: Emoji in ggplot2
* {[ggflags](https://github.com/rensa/ggflags)}: A flag geom for ggplot2
* {[ggimage](https://github.com/GuangchuangYu/ggimage)}: Use Images in ggplot2
* {[ggpath](https://mrcaseb.github.io/ggpath/)}: Robust Image Rendering Support for 'ggplot2'
* {[ggpattern](https://coolbutuseless.github.io/package/ggpattern/index.html)}: ggplot geoms with pattern fills

## Data and models

* {[edgebundle](https://github.com/schochastics/edgebundle)}: R package implementing edge bundling algorithms
* {[distributional](https://pkg.mitchelloharawild.com/distributional/)}: Vectorised distributions for R
* {[FunnelPlotR](https://chrismainey.github.io/FunnelPlotR/)}: Funnel plots for comparing institutional performance, with overdispersion adjustment
* {[GGally](https://ggobi.github.io/ggally/index.html)}: R package that extends ggplot2
* {[ggdendro](http://andrie.github.io/ggdendro/)}: Tools to extract dendrogram plot data for use with 'ggplot2'
* {[ggDoE](https://ggdoe.netlify.app/)}: Modern Graphs for Design of Experiments with ggplot2
* {[ggeffects](https://strengejacke.github.io/ggeffects/)}: Tidy Data Frames of Marginal Effects for ggplot2
* {[ggESDA](https://github.com/kiangkiangkiang/ggESDA)}: An R package for Exploratory Symbolic Data Analysis using ggplot2
* {[ggfortify](https://github.com/sinhrks/ggfortify)}: Define fortify and autoplot functions to allow ggplot2 to handle some popular R packages
* {[gginnards](https://docs.r4photobiology.info/gginnards/)}: R package extending 'ggplot2' with manipulation and debugging tools
* {[ggip](https://davidchall.github.io/ggip/)}: R package to visualize IP data
* {[gglm](https://github.com/graysonwhite/gglm)}: Grammar of Graphics for Linear Model Diagnostic Plots 
* {[ggmice](https://amices.org/ggmice/)}: Visualize incomplete and imputed data
* {[ggols](https://github.com/EvaMaeRey/ggols)}: visual expositions of simpler linear models
* {[ggparty](https://github.com/martin-borkovec/ggparty)}: ggplot2 visualizations for the partykit package
* {[ggpmisc](https://docs.r4photobiology.info/ggpmisc/)}: R package ggpmisc is an extension to ggplot2 and the Grammar of Graphics
* {[ggpval](https://github.com/s6juncheng/ggpval)}: Add statistical test or annotation to your ggplot2 plots
* {[grafify](https://github.com/ashenoy-cmbi/grafify)}: Easy Graphs for Data Visualisation and Linear Models for ANOVA
* {[gratia](https://gavinsimpson.github.io/gratia/)}: ggplot-based graphics and useful functions for GAMs fitted using the mgcv package
* {[ggRandomForest](https://github.com/ehrlinger/ggRandomForests)}: Graphical analysis of random forests with the randomForestSRC, randomForest and ggplot2 packages
* {[ggResidpanel](https://goodekat.github.io/ggResidpanel/)}: An R package for creating a panel of diagnostic plots for residuals from a model
* {[ggstatsplot](https://indrajeetpatil.github.io/ggstatsplot/)}: Enhancing 'ggplot2' plots with statistical analysis
* {[ggsurvfit](https://www.danieldsjoberg.com/ggsurvfit/)}: Easy and Flexible Time-To-Event Figures
* {[interactions](https://interactions.jacob-long.com/)}: A comprehensive, user-friendly toolkit for visualizing and analyzing statistical interactions
* {[jtools](https://jtools.jacob-long.com/)}: Tools for summarizing/visualizing regressions and other helpful stuff
* {[KMunicate](https://ellessenne.github.io/KMunicate-package/)}: Create KMunicate-Style Plots
* {[lindia](https://github.com/yeukyul/lindia)}: Extension package of linear regression diagonostic plots in ggplot2
* {[metrica](https://adriancorrendo.github.io/metrica/)}: Prediction Performance Metrics
* {[mlr3viz](https://mlr3viz.mlr-org.com/)}: Visualizations for mlr3
* {[naniar](https://github.com/njtierney/naniar)}: Tidy data structures, summaries, and visualisations for missing data
* {[performance](https://easystats.github.io/performance/)}: Models' quality and performance metrics (R2, ICC, LOO, AIC, BF, ...)
* {[plotROC](http://sachsmc.github.io/plotROC/)}: Interactive ROC plots with ggplot + d3.js
* {[ppsr](https://github.com/paulvanderlaken/ppsr)}: R implementation of Predictive Power Score
* {[SBC](https://hyunjimoon.github.io/SBC/index.html)}: Simulation-based Calibration
* {[sjPlot](https://strengejacke.github.io/sjPlot/)}: Data Visualization for Statistics in Social Science
* {[superb](https://dcousin3.github.io/superb/)}: Summary plots with adjusted error bars
* {[survminer](https://rpkgs.datanovia.com/survminer/)}: Survival Analysis and Visualization
* {[tidybayes](http://mjskay.github.io/tidybayes/)}: Bayesian analysis + tidy data + geoms
* {[treeheatr](https://trangdata.github.io/treeheatr/)}: Heatmap-integrated Decision Tree Visualizations
* {[visR](https://openpharma.github.io/visR/)}: A package to wrap functionality for plots, tables and diagrams adhering to graphical principles

# Python packages

* {[plotnine](https://github.com/has2k1/plotnine)}: Python implementation of ggplot2 using matplotlib backend
* {[patchworklib](https://github.com/ponnhide/patchworklib)}: The Composer of plotnine ggplots
* {[plotnine3d](https://github.com/krassowski/plotnine3d)}: 3D Graphics using the grammar of graphics
* {[adjustText](https://github.com/Phlya/adjustText)}: ggrepel-inspired label placement for matplotlib (integrated with plotnine)

# Books

* [Data Visualization: A practical introduction](http://socviz.co/)
* [Data Visualization with R](https://rkabacoff.github.io/datavis/)
* [Fundamentals of Data Visualization](https://serialmentor.com/dataviz/)
* [ggplot2: Elegant Graphics for Data Analysis](https://ggplot2-book.org/)

# Book chapters

* [Cookbook for R: Graphs](http://www.cookbook-r.com/Graphs/)
* [R for Data Science: Data visualisation](https://r4ds.had.co.nz/data-visualisation.html)
* [Modern Statistics for Modern Biology: High Quality Graphics in R](https://web.stanford.edu/class/bios221/book/Chap-Graphics.html)
* [Quantitative Politics with R: Introduction to ggplot2](http://qpolr.com/dataviz.html)

# Online Courses

* edX
  * [Data Science: Visualization](https://www.edx.org/course/data-science-visualization)

# Galleries

* [ggplot2 extensions](https://exts.ggplot2.tidyverse.org/)
* [The R Graph Gallery](https://www.r-graph-gallery.com/)
* [R CHARTS](https://r-charts.com/)

# Text tutorials

* Beginner, introduction
  * [a ggplot2 grammar guide](https://evamaerey.github.io/ggplot2_grammar_guide/about)
  * [A Simple Introduction to the Graphing Philosophy of ggplot2](https://tomhopper.me/2014/03/28/a-simple-introduction-to-the-graphing-philosophy-of-ggplot2/)
  * [Aesthetics, Geoms, Mappings, Scales, What?](https://ggplot2tutor.com/beginner_tutorial/beginner_tutorial/)
  * [An Introduction on How to Make Beautiful Charts With R and ggplot2](https://minimaxir.com/2015/02/ggplot-tutorial/)
  * [ggplot2 Quickref](http://r-statistics.co/ggplot2-cheatsheet.html)
  * [Beautiful plotting in R: A ggplot2 cheatsheet](http://zevross.com/blog/2014/08/04/beautiful-plotting-in-r-a-ggplot2-cheatsheet-3/)
  * [Top 50 ggplot2 Visualizations - The Master List (With Full R Code)](http://r-statistics.co/Top50-Ggplot2-Visualizations-MasterList-R-Code.html)
  * [A ggplot2 Tutorial for Beautiful Plotting in R](https://cedricscherer.com/2019/08/05/a-ggplot2-tutorial-for-beautiful-plotting-in-r/)
  * [Statistical tools for high-throughput data analysis: ggplot2 - Essentials](http://www.sthda.com/english/wiki/ggplot2-essentials)
  * [Efficient and beautiful data synthesis: Taking your tidyverse skills to the next level](https://ourcodingclub.github.io/tutorials/dataviz-beautification-synthesis/)
  * [Tips and tricks for ggplot2](https://erikgahner.dk/2022/tips-and-tricks-for-ggplot2/)

* Intermediate, general
  * [Data visualization using ggplot2 (intermediate)](https://rpubs.com/bpbond/727258)
  * [ggplot tricks](https://github.com/teunbrand/ggplot_tricks)
  * [Iterative visualizations with ggplot2: no more copy-pasting](https://www.elenadudukina.com/post/iterative-ggplotting/2021-06-20-iterative-plotting/)

* Theme customisation
  * [3 alternatives to a discrete color scale legend in ggplot2](https://www.nsgrantham.com/legend-alternatives-ggplot2)
  * [10 Levels of ggplot2: From Basic to Beautiful](https://medium.com/compassred-data-blog/10-levels-of-ggplot2-from-basic-to-beautiful-5ce3c4e7624f)
  * [10 Tips to Customize Text Color, Font, Size in ggplot2 with element_text()](https://cmdlinetips.com/2021/05/tips-to-customize-text-color-font-size-in-ggplot2-with-element_text/)
  * [15 Tips to Customize lines in ggplot2 with element_line()](https://cmdlinetips.com/2021/05/tips-to-customize-lines-in-ggplot2-with-element_line/)
  * [A complete guide to scales](https://ggplot2tor.com/scales/)
  * [Alternatives to Simple Color Legends in ggplot2](https://meghan.rbind.io/blog/color-legend/)
  * [Bar plot checklist](https://albert-rapp.de/posts/ggplot2-tips/16_bars_checklist/16_bars_checklist.html)
  * [Changing Glyph in legend in ggplot2](https://www.hvitfeldt.me/blog/changing-glyph-in-ggplot2/)
  * [Creating and using custom ggplot2 themes](https://themockup.blog/posts/2020-12-26-creating-and-using-custom-ggplot2-themes/)
  * [Custom colour palettes for {ggplot2}](https://www.jumpingrivers.com/blog/custom-colour-palettes-for-ggplot2/)
  * [Custom themes in ggplot2](https://www.statworx.com/de/blog/custom-themes-in-ggplot2/)
  * [ggplot Wizardry Hands-On](https://z3tt.github.io/OutlierConf2021/)
  * [How to build a Tufte-style weather graph in R using ggplot2](https://johndjohnson.info/post/how-to-build-a-tufte-style-weather-graph-in-r-using-ggplot2/)
  * [How to make any plot look better](https://ggplot2tutor.com/make_any_plot_look_better/make_any_plot_look_better/)
  * [Making a ggplot theme](https://uncarvedblog.xyz/blog/making_a_ggplot_theme/)
  * [Creating corporate colour palettes for ggplot2](https://drsimonj.svbtle.com/creating-corporate-colour-palettes-for-ggplot2)
  * [Label line ends in time series with ggplot2](https://drsimonj.svbtle.com/label-line-ends-in-time-series-with-ggplot2)
  * [Data Viz with Python and R: ggplot2](https://datavizpyr.com/category/r/ggplot2/)
  * [The Evolution of a ggplot (Ep. 1)](https://cedricscherer.netlify.com/2019/05/17/the-evolution-of-a-ggplot-ep.-1/)
  * [ggplot2 Theme Elements Demonstration](https://henrywang.nl/ggplot2-theme-elements-demonstration/)
  * [Quick and easy ways to deal with long labels in ggplot2](https://www.andrewheiss.com/blog/2022/06/23/long-labels-ggplot/)
  * [Understanding text size and resolution in ggplot2](https://www.christophenicault.com/post/understand_size_dimension_ggplot2/)
  * [Variations on a ggtheme: Applying a unifying aesthetic to your plots](https://www.cararthompson.com/talks/nhsr2022-ggplot-themes/)

* Plot layers
  * [A Quick How-to on Labelling Bar Graphs in ggplot2](https://www.cedricscherer.com/2021/07/05/a-quick-how-to-on-labelling-bar-graphs-in-ggplot2/)
  * [Annotated Forest Plots using ggplot2](https://www.khstats.com/blog/forest-plots/)
  * [Creating flowcharts with {ggplot2}](https://nrennie.rbind.io/blog/2022-06-06-creating-flowcharts-with-ggplot2/)
  * [Exploring ggplot2 boxplots - Defining limits and adjusting style](https://waterdata.usgs.gov/blog/boxplots/)
  * [Exploring other {ggplot2} geoms](https://ivelasq.rbind.io/blog/other-geoms/) 
  * [ggpathway: A tutorial for pathway visualization using tidyverse, igraph, and ggraph](https://github.com/cxli233/ggpathway)
  * [Heatmaps in ggplot2](https://themockup.blog/posts/2020-08-28-heatmaps-in-ggplot2/)
  * [Make Multi-point “dumbbell” Plots in ggplot2](https://rud.is/b/2019/06/06/make-multi-point-dumbbell-plots-in-ggplot2/)
  * [Real Emojis in ggplot2](https://www.hvitfeldt.me/blog/real-emojis-in-ggplot2/)
  * [Recreate a FiveThirtyEight Chicklet Stacked Bar Chart in ggplot2](https://www.mikelee.co/posts/2020-02-08-recreate-fivethirtyeight-chicklet-stacked-bar-chart-in-ggplot2/)
  * [geom_paired_raincloud(): A {ggplot2} geom for visualizing change in distribution between two conditions](https://yjunechoe.github.io/posts/2020-07-13-geom-paired-raincloud/)
  * [Pyramid Plots in ggplot2](https://www.njtierney.com/post/2022/08/09/ggplot-pyramid/)
  * [Radial Patterns in ggplot2](https://ijeamaka-anyene.netlify.app/posts/2021-01-04-radial-patterns-in-ggplot2/)
  * [Storytelling in ggplot using rounded rectangles](https://albert-rapp.de/posts/ggplot2-tips/11_rounded_rectangles/11_rounded_rectangles.html)
  * [Visualizing Distributions with Raincloud Plots (and How to Create Them with ggplot2)](https://www.cedricscherer.com/2021/06/06/visualizing-distributions-with-raincloud-plots-and-how-to-create-them-with-ggplot2/)
  * [Visualizing ordinal variables](https://octavio.me/posts/2021-07-23-ordinal-viz/)
  * [Waffle charts with svg images](https://luisdva.github.io/rstats/wafflechart/)

* Regression models
  * [Sexy up your logistic regression model with logit dotplots](https://solomonkurz.netlify.app/post/2021-09-22-sexy-up-your-logistic-regression-model-with-logit-dotplots/)

* Spatial
  * [6 easy ways to map population density in R](https://milospopovic.net/6-ways-to-map-population-with-r.r/)
  * [Bivariate maps with ggplot2 and sf](https://timogrossenbacher.ch/2019/04/bivariate-maps-with-ggplot2-and-sf/)
  * [Inset maps with ggplot2](https://geocompr.github.io/post/2019/ggplot2-inset-maps/)
  * [Plot RGB satellite imagery in true-color with ggplot2 in R](https://medium.com/@tobias.stalder.geo/plot-rgb-satellite-imagery-in-true-color-with-ggplot2-in-r-10bdb0e4dd1f)
  * [Visualising the 2022 Australian federal election with geom_sugarbag](https://www.mattcowgill.com/posts/election_sugarbag/election_sugarbag.html)

* Presentation
  * [Align multiple ggplot2 plots by axis](https://divingintogeneticsandgenomics.rbind.io/post/align-multiple-ggplot2-plots-by-axis/)
  * [Combining plots in ggplot2](https://medium.com/@pawanjangra1198/combining-plots-in-ggplot2-9699acaa2942)
  * [Designing ggplots: making clear figures that communicate](https://designing-ggplots.netlify.com/)
  * [How to use natural and base 10 log scales in ggplot2](https://www.andrewheiss.com/blog/2022/12/08/log10-natural-log-scales-ggplot/)
  * [Layered Presentation of Graphics with +aes() in ggplot2](https://evangelinereynolds.netlify.com/post/layered-presentation-of-graphics-with-aes-in-ggplot2/)
  * [Label line ends in time series with ggplot2](https://drsimonj.svbtle.com/label-line-ends-in-time-series-with-ggplot2)
  * [Reordering and facetting for ggplot2](https://juliasilge.com/blog/reorder-within/)
  * [Self-documenting plots in ggplot2](https://www.tjmahr.com/self-titled-ggplot2-plots/)

* Statistics
  * [Summary statistics](https://ggplot2tutor.com/summary_statistics/summary_statistics/)
  * [Demystifying stat_ layers in {ggplot2}](https://yjunechoe.github.io/posts/2020-09-26-demystifying-stat-layers-ggplot2/)

# Video tutorials

* Beginner/intermediate
  * [ggplot2 workshop part 1](https://www.youtube.com/watch?v=h29g21z0a68)
  * [ggplot2 workshop part 2](https://www.youtube.com/watch?v=0m4yywqNPVY)
  * [A short introduction to grammar of graphics (via ggplot2)](https://www.youtube.com/playlist?list=PLwJRxp3blEvaYRYWTqQ5ScIow8ZBm3Q92)

* Customization
  * [How to fix the sizes in your ggplots](https://www.youtube.com/watch?v=7kWW8rkpfqc)
  * [How to make Boxplots in R More Informative (ggplot2 and Extension Packages)](https://www.youtube.com/watch?v=kQ8CtRV0kSQ)
  * [ggplot2 Wizardry: My Favorite Tricks and Secrets for Beautiful Plots in R](https://github.com/z3tt/OutlierConf2021)
  * [Beyond Bar and Box Plots: Chart Alternatives and How to Design Them with ggplot2](https://github.com/z3tt/beyond-bar-and-box-plots)

* Packages
  * [Building a ggplot2 rollercoaster: Creating amazing 3D data visualizations in R](https://www.youtube.com/watch?v=hRKx-obmFx8)
  * [esquisse: ggplot2 builder with Tableau Drag-and-Drop Interface](https://www.youtube.com/watch?v=6LV_p3Zi-LM)
  * [How to Plot Statistical Group Comparisons in R: ggstatsplot](https://www.youtube.com/watch?v=Yhz0TKP_CUc)

# TidyTuesday

* [Official repository](https://github.com/rfordatascience/tidytuesday)

* Popular submissions
  * [Deepali Kank](https://github.com/deepdk/TidyTuesday-2022)
  * [Georgios Karamanis](https://github.com/gkaramanis/tidytuesday)
  * [Cédric Scherer](https://github.com/z3tt/TidyTuesday)
  * [Christophe Nicault](https://github.com/cnicault/tidytuesday)
  * [Nicola Rennie](https://github.com/nrennie/tidytuesday)

# Miscellaneous

* [A generated list of repos containing themes for ggplot2](https://github.com/jmcastagnetto/ggplot2_themes_in_github/)
* [All hail ggplot2—The code powering all those excellent charts is 10 years old](https://qz.com/1007328/all-hail-ggplot2-the-code-powering-all-those-excellent-charts-is-10-years-old/)
* [Awesome R](https://awesome-r.com/)
* [awesome-r-dataviz](https://github.com/krzjoa/awesome-r-dataviz)
* [Comparing ggplot2 and R Base Graphics](https://flowingdata.com/2016/03/22/comparing-ggplot2-and-r-base-graphics/)
* [Most upvoted ggplot2 questions on Stack Overflow](https://stackoverflow.com/questions/tagged/ggplot2?tab=Votes)
