Need help with awesome-ggplot2?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

403 Stars 50 Forks 96 Commits 0 Opened issues


A curated list of awesome ggplot2 tutorials, packages etc.

Services available


Need anything else?

Contributors list

# 162,319
81 commits
# 433,022
5 commits
# 230,202
1 commit



Persons (+ twitter)

R packages


  • {calendR}: Fully customizable ready to print monthly and yearly calendars made with ggplot2
  • {complex-upset}: A library for creating complex UpSet plots with ggplot2 geoms
  • {corrmorant}: R package for flexible correlation matrices based on ggplot2
  • {easyalluvial}: Create alluvial plots with a single line of code
  • {econocharts}: Economics charts in R using ggplot2
  • {geomnet}: Network visualization in the ggplot2 framework
  • {ggalluvial}: ggplot2 extension for alluvial plots
  • {ggalt}: Extra Coordinate Systems, Geoms, Statistical Transformations & Scales for 'ggplot2'
  • {ggambit}: Visualise FEN chess positions with ggplot2
  • {gganatogram}: Create anatograms using ggplot2
  • {ggbeeswarm}: Column scatter / beeswarm-style plots in ggplot2
  • {ggblur}: Blurry Point Geom for ggplot2
  • {ggbump}: A geom for ggplot to create bump plots
  • {ggchicklet}: Create Chicklet (Rounded Segmented Column) Charts
  • {ggcor}: Extended tools for correlation analysis and visualization.
  • {ggeconodist}: Create Diminutive Distribution Charts
  • {ggdag}: An R Package for visualizing and analyzing causal directed acyclic graphs
  • {ggdist}: Visualizations of distributions and uncertainty
  • {ggExtra}: Add marginal histograms to ggplot2, and more ggplot2 enhancements
  • {gggibbous}: Moon charts, a pie chart alternative, for ggplot2
  • {gghalves}: Easy half-half geoms in ggplot2
  • {gghilbertstrings}: Create Hilbert curves in ggplot2
  • {ggkeyboard}: Make a keyboard using ggplot2
  • {ggmacc}: R package repository for building marginal abatement cost curves with ggplot2
  • {ggmosaic}: Mosaicplots in the ggplot2 framework
  • {ggparliament}: Simple parliament plots using ggplot2
  • {ggpointdensity}: A Cross Between a Scatter Plot and a 2D Density Plot
  • {ggsoccer}: Plot soccer event data in R/ggplot2
  • {ggspectra}: Plotting spectra with ggplot2
  • {ggpage}: Creates Page Layout Visualizations in R
  • {ggpol}: Parliament diagrams and more for ggplot2
  • {ggpolypath}: Polygons with holes for ggplot2
  • {ggpubr}: 'ggplot2' Based Publication Ready Plots
  • {ggradar}: radar charts with ggplot2
  • {ggraph}: A grammar of graphics for relational data
  • {ggrastr}: Raster geoms for ggplot2
  • {ggrepel}: Repel overlapping text labels away from each other
  • {ggrgl}: 3D Graphics Using the Grammar of Graphics
  • {ggridges}: Ridgeline plots in ggplot2
  • {ggside}: ggplot2 extension allowing for plotting various geometries as side panels
  • {ggsignif}: Easily add significance brackets to your ggplots
  • {ggstream}: A package to make streamplots
  • {ggtda}: ggplot2 extension to visualize persistent homology
  • {ggTimeSeries}: Time series visualisation
  • {ggthreed}: 3d geoms and stats for ggplot
  • {ggtree}: Visualization and annotation of phylogenetic trees
  • {ggvenn}: Venn Diagram by ggplot2, with really easy-to-use API
  • {ggVennDiagram}: A 'ggplot2' implement of Venn Diagram
  • {ggwaffle}: Creating waffle charts in a ggplot friendly way
  • {ggweekly}: Easy, printable, custom calendars and week planners
  • {ggwordcloud}: A word cloud geom for ggplot2
  • {ggxmean}: Put a vertical line at the mean of x w/ geom_xmean() and do other stuff
  • {parttree}: Simple package for plotting decision tree partitions in R
  • {treemapify}: Draw treemaps in ggplot2
  • {waffle}: Make waffle (square pie) charts in R

Themes and aesthetics

  • {bbplot}: R package that helps create and export ggplot2 charts in the style used by the BBC News data team
  • {cyberpunk}: A function to create cyberpunk-style graphs with R based on ggplot2
  • {ggcharts}: Get You to Your Desired Plot Faster
  • {ggdark}: Dark mode for ggplot2 themes
  • {ggCyberPunk}: Working on creating a similar cyberpunk geom for ggplot
  • {ggeasy}: Easy Access to 'ggplot2' Commands
  • {ggedit}: Interactively edit ggplot layer aesthetics and theme definitions
  • {ggfittext}: ggplot2 geoms to fit text into boxes
  • {ggfx}: ggfx is a (currently experimantal) package that allows the use of various filters and shaders on ggplot2 layers
  • {gghighlight}: Highlight points and lines in ggplot2
  • {gglaplot}: Makes graphics in the GLA style using ggplot2
  • {ggnewscale}: Multiple Fill and Color Scales in 'ggplot2'
  • {ggpomological}: Pomological plot theme for ggplot2
  • {ggprism}: ggplot2 extension inspired by GraphPad Prism
  • {ggrough}: Convert ggplot2 chart to roughjs
  • {ggsci}: Scientific journal and sci-fi themed color palettes for ggplot2
  • {ggstar}: Star layer for ggplot2
  • {ggtech}: ggplot2 tech themes, scales, and geoms
  • {ggtext}: Improved text rendering support for ggplot2
  • {ggtextures}: Drawing textured rectangles and bars with ggplot
  • {ggthemes}: Additional themes, scales, and geoms for ggplot2
  • {ggthemr}: Themes for ggplot2
  • {hrbrthemes}: Opinionated, typographic-centric ggplot2 themes and theme components
  • {mdthemes}: Markdown Themes for 'ggplot2'
  • {paletteer}: Collection of most color palettes in a single R package
  • {rockthemes}: R colour palettes based on classic rock albums and some other ones
  • {savonliquide}: Check for Color Contrast Accessibility in R
  • {soilpalettes}: R color palettes inspired by soil profiles
  • {thematic}: Unified and automatic theming of ggplot2, lattice, and base R graphics
  • {tvthemes}: ggplot2 themes and palettes based on your favorite TV shows
  • {urbnthemes}: Urban Institute's ggplot2 theme and tools

Presentation, composition and scales

  • {cowplot}: Streamlined Plot Theme and Plot Annotations for ggplot2
  • {facetscales}: facet_grid with different scales per facet
  • {geofacet}: R package for geographical faceting with ggplot2
  • {gganimate}: A Grammar of Animated Graphics
  • {ggannotate}: Interactively annotate ggplots
  • {ggbillboard}: A package to fill vacant ggplot2 facets with images
  • {ggfocus}: A 'ggplot2' extension that provides tools for automatically creating scales to focus on subgroups
  • {ggforce}: Accelerating ggplot2
  • {ggh4x}: ggplot extension: options for tailored facets, multiple colourscales and miscellaneous
  • {gghighlight}: Highlight points and lines in ggplot2
  • {ggiraph}: Make 'ggplot' Graphics Interactive
  • {ggupset}: Combination matrix axis for 'ggplot2' to create 'UpSet' plots
  • {patchwork}: The Composer of ggplots
  • {plotly}: An interactive graphing library for R
  • {scales}: Tools for ggplot2 scales
  • {showtext}: Using Fonts More Easily in R Graphs
  • {tagger}: Add tags to ggplot2 facets


  • {ggcounty}: Generate ggplot2 geom_map county maps
  • {ggmap}: A package for plotting maps in R with ggplot2
  • {ggOceanMaps}: Plot oceanographic research data on maps using ggplot2
  • {ggsn}: R package to add north symbols and scale bars to maps created with ggplot or ggmap
  • {ggspatial}: Enhancing spatial visualization in ggplot2
  • {mapDK}: R package for making maps of Denmark
  • {mapSpain}: Administrative Boundaries of Spain
  • {metR}: Tools for Easier Analysis of Meteorological Fields
  • {rayshader}: R Package for 2D and 3D mapping and data visualization
  • {sugarbag}: An R package to create tessellated hexagon maps of Australia
  • {urbnmapr}: US state and county maps with Alaska and Hawaii

Icons, patterns and images

  • {emoGG}: Emoji in ggplot2
  • {ggflags}: A flag geom for ggplot2
  • {ggimage}: Use Images in ggplot2
  • {ggpattern}: ggplot geoms with pattern fills

Data and models

  • {edgebundle}: R package implementing edge bundling algorithms
  • {FunnelPlotR}: Funnel plots for comparing institutional performance, with overdispersion adjustment
  • {GGally}: R package that extends ggplot2
  • {ggdendro}: Tools to extract dendrogram plot data for use with 'ggplot2'
  • {ggeffects}: Tidy Data Frames of Marginal Effects for ggplot2
  • {ggfortify}: Define fortify and autoplot functions to allow ggplot2 to handle some popular R packages
  • {ggip}: R package to visualize IP data
  • {gglm}: Grammar of Graphics for Linear Model Diagnostic Plots
  • {ggparty}: ggplot2 visualizations for the partykit package
  • {ggpval}: Add statistical test or annotation to your ggplot2 plots
  • {ggRandomForest}: Graphical analysis of random forests with the randomForestSRC, randomForest and ggplot2 packages
  • {ggResidpanel}: An R package for creating a panel of diagnostic plots for residuals from a model
  • {ggstatsplot}: Enhancing 'ggplot2' plots with statistical analysis
  • {jtools}: Tools for summarizing/visualizing regressions and other helpful stuff
  • {KMunicate}: Create KMunicate-Style Plots
  • {lindia}: Extension package of linear regression diagonostic plots in ggplot2
  • {naniar}: Tidy data structures, summaries, and visualisations for missing data
  • {sjPlot}: Data Visualization for Statistics in Social Science
  • {survminer}: Survival Analysis and Visualization
  • {tidybayes}: Bayesian analysis + tidy data + geoms


Book chapters

Online Courses


Text tutorials

Video tutorials


We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.