Supporting Tools

As with most R packages, none of this capability would be possible without the many foundational libraries upon which Venndir was built.

Graphics

The graphics system used by Venndir is grid, a core R package that empowers reliable calculation of figure units, metrics, font placement, and dynamic updating of a figure upon resizing.

The supporting extension gridGeometry (Murrell and Wong 2025) enables inner and outer borders which will be discussed at length in the advanced customization topics.

Similarly gridExtra (Auguie 2017) brings the ability to create a nice table legend, which has become an essential default feature of Venndir.

Venndir manipulates polygons primarily through polyclip (Johnson and Baddeley 2024), which enables geometry calculations including intersection, union, subtraction, and buffer region.

Proportional Euler diagrams are made possible by eulerr (Larsson 2024), which performs the hard work of predicting the best available alignment between Venn counts and geometry.

Fonts and Labels

A large part of Venndir focuses on labeling, which necessarily involves detailed control over fonts, glyphs, and assembling multiple label components together into a group.

The marquee (Pedersen and Mitáš 2025) package provides methods to place text, replacing previous methods in part due to its use of systemfonts (Pedersen, Ooms, and Govett 2025) for font and glyph substitutions. Without these features, Venndir encountered too many scenarios where the font, symbol, or glyph would be incorrect due to the specific computing architecture, character locale, or output graphics device. Most such scenarios are resolved by using systemfonts, while marquee adds substantial flexibility with its support of markdown formatting.

Venndir count labels are often comprised of several pieces, and gtable (Wickham and Pedersen 2024) enables grouping them into one graphical object.

Venndir is a refined set of methods that fuses these amazing tools together into one uniquely powerful package.

References

Auguie, Baptiste. 2017. gridExtra: Miscellaneous Functions for "Grid" Graphics. https://doi.org/10.32614/CRAN.package.gridExtra.
Johnson, Angus, and Adrian Baddeley. 2024. Polyclip: Polygon Clipping. https://www.angusj.com.
Larsson, Johan. 2024. Eulerr: Area-Proportional Euler and Venn Diagrams with Ellipses. https://github.com/jolars/eulerr.
Murrell, Paul, and Jack Wong. 2025. gridGeometry: Polygon Geometry in Grid. https://github.com/pmur002/gridgeometry.
Pedersen, Thomas Lin, and Martin Mitáš. 2025. Marquee: Markdown Parser and Renderer for r Graphics. https://marquee.r-lib.org.
Pedersen, Thomas Lin, Jeroen Ooms, and Devon Govett. 2025. Systemfonts: System Native Font Finding. https://github.com/r-lib/systemfonts.
Wickham, Hadley, and Thomas Lin Pedersen. 2024. Gtable: Arrange Grobs in Tables. https://gtable.r-lib.org.