Package: ggVennDiagram 1.5.7

ggVennDiagram: A 'ggplot2' Implement of Venn Diagram

Easy-to-use functions to generate 2-7 sets Venn or upset plot in publication quality. 'ggVennDiagram' plot Venn or upset using well-defined geometry dataset and 'ggplot2'. The shapes of 2-4 sets Venn use circles and ellipses, while the shapes of 4-7 sets Venn use irregular polygons (4 has both forms), which are developed and imported from another package 'venn', authored by Adrian Dusa. We provided internal functions to integrate shape data with user provided sets data, and calculated the geometry of every regions/intersections of them, then separately plot Venn in four components, set edges/labels, and region edges/labels. From version 1.0, it is possible to customize these components as you demand in ordinary 'ggplot2' grammar. From version 1.4.4, it supports unlimited number of sets, as it can draw a plain upset plot automatically when number of sets is more than 7.

Authors:Chun-Hui Gao [aut, cre], Guangchuang Yu [ctb], Adrian Dusa [aut, cph], Turgut Yigit Akyol [ctb]

ggVennDiagram_1.5.7.tar.gz
ggVennDiagram_1.5.7.zip(r-4.7)ggVennDiagram_1.5.7.zip(r-4.6)ggVennDiagram_1.5.7.zip(r-4.5)
ggVennDiagram_1.5.7.tgz(r-4.6-any)ggVennDiagram_1.5.7.tgz(r-4.5-any)
ggVennDiagram_1.5.7.tar.gz(r-4.7-any)ggVennDiagram_1.5.7.tar.gz(r-4.6-any)
ggVennDiagram_1.5.7.tgz(r-4.6-emscripten)
manual.pdf |manual.html
card.svg |card.png
ggVennDiagram/json (API)
NEWS

# Install 'ggVennDiagram' in R:
install.packages('ggVennDiagram', repos = c('https://gaospecial.r-universe.dev', 'https://cloud.r-project.org'))

Bug tracker:https://github.com/gaospecial/ggvenndiagram/issues

Pkgdown/docs site:https://gaospecial.github.io

On CRAN:

Conda:

set-operationsupsetupsetplotvenn-diagramvenn-plot

13.41 score 313 stars 3 packages 1.9k scripts 12k downloads 8 mentions 25 exports 37 dependencies

Last updated from:1312fac607. Checks:9 OK. Indexed: yes.

TargetResultTimeFilesSyslog
linux-devel-x86_64OK169
source / vignettesOK205
linux-release-x86_64OK210
macos-release-arm64OK211
macos-oldrel-arm64OK170
windows-develOK125
windows-releaseOK101
windows-oldrelOK111
wasm-releaseOK122

Exports:discerndiscern_overlapget_shape_by_idget_shape_dataget_shapesggVennDiagramlaunch_appoverlapplot_shape_edgeplot_shapesplot_upsetplot_vennplotData_add_vennprocess_dataprocess_region_dataprocess_set_datashowuniteVennvenn_regionvenn_regionedgevenn_regionlabelvenn_setvenn_setedgevenn_setlabel

Dependencies:admiscaplotclicpp11digestdplyrfarverforcatsfsgenericsggfunggplot2ggplotifygluegridGraphicsgtableisobandlabelinglifecyclemagrittrpatchworkpillarpkgconfigR6rappdirsRColorBrewerrlangS7scalestibbletidyselectutf8vctrsvennviridisLitewithryulab.utils

Fully Customed Venn Diagram

Rendered fromfully-customed.Rmdusingknitr::rmarkdownon Jun 09 2026.

Last update: 2024-01-05
Started: 2021-07-01

Tutorial: Using ggVennDiagram

Rendered fromusing-ggVennDiagram.Rmdusingknitr::rmarkdownon Jun 09 2026.

Last update: 2025-06-30
Started: 2021-05-17

Using New Shapes in Venn Diagram

Rendered fromusing-new-shapes.Rmdusingknitr::rmarkdownon Jun 09 2026.

Last update: 2024-01-08
Started: 2021-07-01

Venn Calculator

Rendered fromVennCalculator.Rmdusingknitr::rmarkdownon Jun 09 2026.

Last update: 2024-01-21
Started: 2024-01-21

Readme and manuals

Help Manual

Help pageTopics
All members of a list have the same elementsall_identical
all possible combinations of n setscombinations
Set difference.discern discern,Venn-method
Calculate region of setsdiscern_overlap discern_overlap,Venn-method
Specifying a shapeget_shape_by_id
get applicable shape data for Venn objectget_shape_data
Get all shapesget_shapes
ggVennDiagram main parserggVennDiagram
Launch Reactor Data Shiny Applaunch_app
Intersection of many sets.overlap overlap,Venn-method
Plot the set edge of a VennPlotDataplot_shape_edge
plot all shapes provided by internal datasetplot_shapes
plot codesplot_venn
join the shape data with set dataplotData_add_venn
S3 method for 'upsetPlotData'print print.upsetPlotData print.VennPlotData
get plot dataprocess_data process_data,Venn-method
process upset dataprocess_upset_data
Implement of 'tidyr::separate_longer_delim'separate_longer_delim
shapes: shape data used to setup Venn plotshapes
check and format slice nameslice_idx
Union of many sets.unite unite,Venn-method
Plot a upset plotplot_upset upset-plot
Prepare Venn dataprocess_region_data process_set_data venn_data
Get VennPlotData slotvenn_plot_data venn_region venn_regionedge venn_regionlabel venn_set venn_setedge venn_setlabel
_'Venn'_ is a S4 class to represent multiple sets.show,Venn-method Venn Venn,ANY-method Venn-class
An S3 class constructor of representing Venn plot components.VennPlotData
Import venn shape coordinatesvensets