Venn diagram: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
Line 1: | Line 1: | ||
= Misc = | |||
* 2014 Paper [https://journals.plos.org/plosone/article?id=10.1371/journal.pone.0101717 eulerAPE: Drawing Area-Proportional 3-Venn Diagrams Using Ellipses] which includes an overview of several tools. The paper is linked from the website https://upset.app. | * 2014 Paper [https://journals.plos.org/plosone/article?id=10.1371/journal.pone.0101717 eulerAPE: Drawing Area-Proportional 3-Venn Diagrams Using Ellipses] which includes an overview of several tools. The paper is linked from the website https://upset.app. | ||
* [https://codingenes.wordpress.com/2013/09/30/visualization-biological-data-using-proportional-venn-diagrams/ Visualization biological data using proportional venn diagrams] | * [https://codingenes.wordpress.com/2013/09/30/visualization-biological-data-using-proportional-venn-diagrams/ Visualization biological data using proportional venn diagrams] | ||
* [https://www.datanovia.com/en/blog/venn-diagram-with-r-or-rstudio-a-million-ways/#using-the-venndiagram-r-package VENN DIAGRAM WITH R OR RSTUDIO: A MILLION WAYS] | * [https://www.datanovia.com/en/blog/venn-diagram-with-r-or-rstudio-a-million-ways/#using-the-venndiagram-r-package VENN DIAGRAM WITH R OR RSTUDIO: A MILLION WAYS] | ||
<ul> | <ul> | ||
<li>http://manuals.bioinformatics.ucr.edu/home/R_BioCondManual#TOC-Venn-Diagrams and the [http://faculty.ucr.edu/~tgirke/Documents/R_BioCond/My_R_Scripts/overLapper.R R code] or the [http://www.bioconductor.org/packages/release/bioc/html/systemPipeR.html Bioc package systemPipeR] | <li>http://manuals.bioinformatics.ucr.edu/home/R_BioCondManual#TOC-Venn-Diagrams and the [http://faculty.ucr.edu/~tgirke/Documents/R_BioCond/My_R_Scripts/overLapper.R R code] or the [http://www.bioconductor.org/packages/release/bioc/html/systemPipeR.html Bioc package systemPipeR] | ||
Line 89: | Line 42: | ||
* [https://cran.r-project.org/web/packages/ComplexUpset/index.html ComplexUpset]: Create Complex UpSet Plots Using 'ggplot2' Components | * [https://cran.r-project.org/web/packages/ComplexUpset/index.html ComplexUpset]: Create Complex UpSet Plots Using 'ggplot2' Components | ||
* [https://jokergoo.github.io/ComplexHeatmap-reference/book/upset-plot.html Chapter 8 UpSet plot] | * [https://jokergoo.github.io/ComplexHeatmap-reference/book/upset-plot.html Chapter 8 UpSet plot] | ||
= ggvenn = | |||
ggvenn package (best so far) | |||
<syntaxhighlight lang='rsplus'> | |||
library(ggvenn) | |||
ggvenn(list(A = 1:150, B = 121:170, C=141:200), | |||
fill_color = c("#0073C2FF", "#CD534CFF", "#EFC000FF")) # looks normal | |||
</syntaxhighlight> | |||
= VennDiagram = | |||
[https://cran.r-project.org/web/packages/VennDiagram/ VennDiagram] - input has to be the numbers instead of the original vector? | |||
<ul> | |||
<li>Example from the help | |||
<pre> | |||
grid.newpage() | |||
grid.draw(venn.diagram(list(A = 1:150, B = 121:170), NULL) ) | |||
grid.newpage() | |||
grid.draw(venn.diagram(list(A = 1:150, B = 121:170, C=141:200), NULL, | |||
category.names = c("Set 1" , "Set 2 ", "Set 3"), | |||
fill = c("#0073C2FF", "#CD534CFF", "#EFC000FF")) ) # weird | |||
</pre> | |||
</li> | |||
<li>[https://bmcbioinformatics.biomedcentral.com/articles/10.1186/1471-2105-12-35 VennDiagram]: a package for the generation of highly-customizable Venn and Euler diagrams in R. scaling is one option. </li> | |||
<li>https://www.r-graph-gallery.com/venn-diagram.html </li> | |||
<li>And a [https://stackoverflow.com/a/11935618 trick] to make scaling works. </li> | |||
</ul> | |||
= gplots = | |||
black and white? | |||
<pre> | |||
gplots::venn(list(A = 1:150, B = 121:170, C=141:200)) | |||
</pre> | |||
= Vennerable = | |||
Vennerable package https://github.com/js229/Vennerable | |||
<ul> | |||
<li>[https://genometoolbox.blogspot.com/2014/06/make-venn-diagram-with-correctly.html Make Venn Diagram in R with Correctly Weighted Areas] </li> | |||
<li>[https://code-examples.net/en/q/15cdd2 Venn Diagrams with R] | |||
<pre> | |||
if (!requireNamespace("BiocManager", quietly = TRUE)) | |||
install.packages("BiocManager") | |||
BiocManager::install("graph") | |||
BiocManager::install("RBGL") # fail on Rstudio cloud | |||
install.packages("Vennerable", repos="http://R-Forge.R-project.org") | |||
</pre> | |||
</li> | |||
</ul> | |||
= limma = | |||
* https://rdrr.io/bioc/limma/man/venn.html | |||
* [https://bioconductor.org/packages/devel/bioc/vignettes/limma/inst/doc/usersguide.pdf User guide]. Only black and white. | |||
= eulerr = | |||
[https://cran.r-project.org/web/packages/eulerr/index.html eulerr] package | |||
= venn = | |||
[https://cran.r-project.org/web/packages/venn/index.html venn] package | |||
= ggVennDiagram = | |||
https://cloud.r-project.org/web/packages/ggVennDiagram/index.html |
Revision as of 15:11, 15 March 2024
Misc
- 2014 Paper eulerAPE: Drawing Area-Proportional 3-Venn Diagrams Using Ellipses which includes an overview of several tools. The paper is linked from the website https://upset.app.
- Visualization biological data using proportional venn diagrams
- VENN DIAGRAM WITH R OR RSTUDIO: A MILLION WAYS
- http://manuals.bioinformatics.ucr.edu/home/R_BioCondManual#TOC-Venn-Diagrams and the R code or the Bioc package systemPipeR
# systemPipeR package method library(systemPipeR) setlist <- list(A=sample(letters, 18), B=sample(letters, 16), C=sample(letters, 20), D=sample(letters, 22), E=sample(letters, 18)) OLlist <- overLapper(setlist[1:3], type="vennsets") vennPlot(list(OLlist)) # R script source method source("http://faculty.ucr.edu/~tgirke/Documents/R_BioCond/My_R_Scripts/overLapper.R") setlist <- list(A=sample(letters, 18), B=sample(letters, 16), C=sample(letters, 20), D=sample(letters, 22), E=sample(letters, 18)) # or (obtained by dput(setlist)) setlist <- structure(list(A = c("o", "h", "u", "p", "i", "s", "a", "w", "b", "z", "n", "c", "k", "j", "y", "m", "t", "q"), B = c("h", "r", "x", "y", "b", "t", "d", "o", "m", "q", "g", "v", "c", "u", "f", "z"), C = c("b", "e", "t", "u", "s", "j", "o", "k", "d", "l", "g", "i", "w", "n", "p", "a", "y", "x", "m", "z"), D = c("f", "g", "b", "k", "j", "m", "e", "q", "i", "d", "o", "l", "c", "t", "x", "r", "s", "u", "w", "a", "z", "n"), E = c("u", "w", "o", "k", "n", "h", "p", "z", "l", "m", "r", "d", "q", "s", "x", "b", "v", "t"), F = c("o", "j", "r", "c", "l", "l", "u", "b", "f", "d", "u", "m", "y", "t", "y", "s", "a", "g", "t", "m", "x", "m" )), .Names = c("A", "B", "C", "D", "E", "F")) OLlist <- overLapper(setlist[1:3], type="vennsets") counts <- list(sapply(OLlist$Venn_List, length)) vennPlot(counts=counts)
UpSet plot
- https://upset.app/
- UpSetR
- ComplexUpset: Create Complex UpSet Plots Using 'ggplot2' Components
- Chapter 8 UpSet plot
ggvenn
ggvenn package (best so far)
library(ggvenn) ggvenn(list(A = 1:150, B = 121:170, C=141:200), fill_color = c("#0073C2FF", "#CD534CFF", "#EFC000FF")) # looks normal
VennDiagram
VennDiagram - input has to be the numbers instead of the original vector?
- Example from the help
grid.newpage() grid.draw(venn.diagram(list(A = 1:150, B = 121:170), NULL) ) grid.newpage() grid.draw(venn.diagram(list(A = 1:150, B = 121:170, C=141:200), NULL, category.names = c("Set 1" , "Set 2 ", "Set 3"), fill = c("#0073C2FF", "#CD534CFF", "#EFC000FF")) ) # weird
- VennDiagram: a package for the generation of highly-customizable Venn and Euler diagrams in R. scaling is one option.
- https://www.r-graph-gallery.com/venn-diagram.html
- And a trick to make scaling works.
gplots
black and white?
gplots::venn(list(A = 1:150, B = 121:170, C=141:200))
Vennerable
Vennerable package https://github.com/js229/Vennerable
- Make Venn Diagram in R with Correctly Weighted Areas
- Venn Diagrams with R
if (!requireNamespace("BiocManager", quietly = TRUE)) install.packages("BiocManager") BiocManager::install("graph") BiocManager::install("RBGL") # fail on Rstudio cloud install.packages("Vennerable", repos="http://R-Forge.R-project.org")
limma
- https://rdrr.io/bioc/limma/man/venn.html
- User guide. Only black and white.
eulerr
eulerr package
venn
venn package
ggVennDiagram
https://cloud.r-project.org/web/packages/ggVennDiagram/index.html