UpSet.js Venn and Euler Diagrams

Samuel Gratzl

2022-07-12

UpSet.js R Widget - Venn Diagrams

UpSet.js has a basic support for classical Venn and Euler diagrams for two or three sets.

# devtools::install_url("https://github.com/upsetjs/upsetjs_r/releases/latest/download/upsetjs.tar.gz")
library(upsetjs)

Basic User Interface

listInput <- list(one = c("a", "b", "c", "e", "g", "h", "k", "l", "m"), two = c("a",
    "b", "d", "e", "j"), three = c("a", "e", "f", "g", "h", "i", "j", "l", "m"))

w <- upsetjsVennDiagram() %>%
    fromList(listInput) %>%
    interactiveChart()
w

Euler diagrams are based on venn.js thus supporting more than three sets but might result in unexpected results

we <- upsetjsEulerDiagram() %>%
    fromList(listInput) %>%
    interactiveChart()
we

Input Formats

same as for upsetjs: fromList, fromDataFrame, and fromExpression

Data Intersections

not possible to define since the number of sections in the Venn diagrams are fixed

Interaction

Interactivity

same as upsetjs

Selection

same as upsetjs

Queries

same as upsetjs

Attributes

not supported

Styling

Theme

same as upsetjs

Title

provided as a different function: chartVennLabels

upsetjsVennDiagram() %>%
    fromList(listInput) %>%
    chartVennLabels(title = "Chart Title", description = "this is a long chart description")