EthnoBotaPhyWR

EthnoBotaPhyWR stands for ethnobotany, phytochemistry, Wikidata and R (maybe you can also find the bot of robot) It should be pronounced "Ethnobota Fever".

Requirements

Here is what you minimally need:

Additionally, you can provide:

Or simply use the included orchids datasets for analysis.

Features

EthnoBotaPhyWR provides:

Installation

As the package is not (yet) available on CRAN, you will need to install with:

install.packages(
  "EthnoBotaPhyWR",
  repos = c(
    "https://adafede.r-universe.dev",
    "https://davidgohel.r-universe.dev", # required for ggiraph, required for ggtree
    "https://cran.r-universe.dev",
    "https://bioc.r-universe.dev"
  )
)

Once installed, you are ready to go through our documentation, with the major steps detailed.

Quick Start

Load included datasets

library(EthnoBotaPhyWR)

# Phytochemical data with SMILES and classification
data(orchids_compounds)
head(orchids_compounds)

# NPClassifier taxonomy lookup
data(orchids_compound_classes)
head(orchids_compound_classes)

# Ethnobotanical uses linked to phylogenetics
data(orchids_ethnobotanical)
head(orchids_ethnobotanical)

Analyze your own family

# Get data for any plant family (requires Wikidata)
result <- ethnobotafever_tree(
  taxon_name = "Orchidaceae",
  n_multiple_genera = 1,
  n_ethnobotanical_count_min = 0,
  n_compounds_count_min = 0,
  example_family_names = c("Solanaceae", "Fabaceae"),
  path_molecules = NULL,  # or path to your own
  path_classes = NULL,
  path_ethnobotanical = NULL,
  export_tree_full = "~/orchids_tree_full.pdf",
  export_tree_phyto = "~/orchids_tree_phyto.pdf",
  export_tree_phyto_sub = "~/orchids_tree_phyto_sub.pdf",
  export_table_classified = "~/orchids_classified.tsv",
  export_table_counts = "~/orchids_counts.tsv",
  export_table_counts_sub = "~/orchids_counts_sub.tsv",
  local_cache = "~/.ethnobotaphy_cache",
  log_dir = "~/"
)

Main Citations

LOTUS

https://doi.org/10.7554/eLife.70780

Open Tree Taxonomy

https://doi.org/10.3897/BDJ.5.e12581

NPClassifier

https://doi.org/10.1021/acs.jnatprod.1c00399

Additional software credits

Package Version Citation
ape 5.8.1 Paradis and Schliep (2019)
base 4.6.1 R Core Team (2026a)
BiocManager 1.30.27 Morgan and Ramos (2025)
BiocVersion 3.23.1 Morgan (2025)
curl 8.1.0 Ooms (2026a)
data.table 1.18.6.1 Barrett et al. (2026)
EthnoBotaPhyWR 0.0.0.9001 Rutz (2026)
ggtext 0.2.0 Wilke and Wiernik (2026)
ggtree 4.2.0 Yu et al. (2017); Yu et al. (2018); Yu (2020); Yu (2022a); Xu et al. (2022)
ggtreeExtra 1.22.1 Xu et al. (2021); Yu (2022b)
grid 4.6.1 R Core Team (2026b)
gt 1.4.0 Iannone et al. (2026)
httr2 1.3.0 Wickham (2026)
khroma 1.17.0 Frerebeau (2025)
knitr 1.52 Xie (2014); Xie (2015); Xie (2026)
logger 0.4.3 Daróczi and Wickham (2026)
openssl 2.4.2 Ooms (2026b)
phangorn 2.12.1 Schliep (2011); Schliep et al. (2017)
rmarkdown 2.32 Xie et al. (2018); Xie et al. (2020); Allaire et al. (2026)
rotl 3.1.1 Michonneau et al. (2016); OpenTreeOfLife et al. (2019)
scales 1.4.0 Wickham et al. (2025)
spelling 2.3.2 Ooms and Hester (2025)
testthat 3.3.2 Wickham (2011)
tidytable 0.11.2 Fairbanks (2024)
tidytree 0.4.8 Yu (2022c)
tidyverse 2.0.0 Wickham et al. (2019)

Allaire, JJ, Yihui Xie, Christophe Dervieux, et al. 2026. rmarkdown: Dynamic Documents for r. https://github.com/rstudio/rmarkdown.

Barrett, Tyson, Matt Dowle, Arun Srinivasan, et al. 2026. data.table: Extension of “data.frame”. https://doi.org/10.32614/CRAN.package.data.table.

Daróczi, Gergely, and Hadley Wickham. 2026. logger: A Lightweight, Modern and Flexible Logging Utility. https://doi.org/10.32614/CRAN.package.logger.

Fairbanks, Mark. 2024. tidytable: Tidy Interface to “data.table”. https://doi.org/10.32614/CRAN.package.tidytable.

Frerebeau, Nicolas. 2025. khroma: Colour Schemes for Scientific Data Visualization. Université Bordeaux Montaigne. https://doi.org/10.5281/zenodo.1472077.

Iannone, Richard, Joe Cheng, Barret Schloerke, et al. 2026. gt: Easily Create Presentation-Ready Display Tables. https://doi.org/10.32614/CRAN.package.gt.

Michonneau, Francois, Joseph W. Brown, and David J. Winter. 2016. “rotl: An r Package to Interact with the Open Tree of Life Data.” Methods in Ecology and Evolution 7 (12): 1476–81. https://doi.org/10.1111/2041-210X.12593.

Morgan, Martin. 2025. BiocVersion: Set the Appropriate Version of Bioconductor Packages.

Morgan, Martin, and Marcel Ramos. 2025. BiocManager: Access the Bioconductor Project Package Repository. https://doi.org/10.32614/CRAN.package.BiocManager.

Ooms, Jeroen. 2026a. curl: A Modern and Flexible Web Client for r. https://doi.org/10.32614/CRAN.package.curl.

Ooms, Jeroen. 2026b. openssl: Toolkit for Encryption, Signatures and Certificates Based on OpenSSL. https://doi.org/10.32614/CRAN.package.openssl.

Ooms, Jeroen, and Jim Hester. 2025. spelling: Tools for Spell Checking in r. https://doi.org/10.32614/CRAN.package.spelling.

OpenTreeOfLife, Benjamin Redelings, Luna Luisa Sanchez Reyes, et al. 2019. Open Tree of Life Synthetic Tree. Version 12.3. Zenodo. https://doi.org/10.5281/zenodo.3937741.

Paradis, Emmanuel, and Klaus Schliep. 2019. “Ape 5.0: An Environment for Modern Phylogenetics and Evolutionary Analyses in R.” Bioinformatics 35: 526–28. https://doi.org/10.1093/bioinformatics/bty633.

R Core Team. 2026a. R: A Language and Environment for Statistical Computing. R Foundation for Statistical Computing. https://doi.org/10.32614/R.manuals.

R Core Team. 2026b. R: A Language and Environment for Statistical Computing. R Foundation for Statistical Computing. https://doi.org/10.32614/R.manuals.

Rutz, Adriano. 2026. EthnoBotaPhyWR: Infrastructure for Ethnobotanical and Phytochemical Data Integration with Wikidata. https://doi.org/10.5281/zenodo.TODO.

Schliep, Klaus. 2011. “phangorn: Phylogenetic Analysis in r.” Bioinformatics 27 (4): 592–93. https://doi.org/10.1093/bioinformatics/btq706.

Schliep, Klaus, Alastair J. Potts, David A. Morrison, and Guido W. Grimm. 2017. “Intertwining Phylogenetic Trees and Networks.” Methods in Ecology and Evolution 8 (10): 1212–20.

Wickham, Hadley. 2011. “testthat: Get Started with Testing.” The R Journal 3: 5–10. https://journal.r-project.org/articles/RJ-2011-002/.

Wickham, Hadley. 2026. Httr2: Perform HTTP Requests and Process the Responses. https://doi.org/10.32614/CRAN.package.httr2.

Wickham, Hadley, Mara Averick, Jennifer Bryan, et al. 2019. “Welcome to the tidyverse.” Journal of Open Source Software 4 (43): 1686. https://doi.org/10.21105/joss.01686.

Wickham, Hadley, Thomas Lin Pedersen, and Dana Seidel. 2025. scales: Scale Functions for Visualization. https://doi.org/10.32614/CRAN.package.scales.

Wilke, Claus O., and Brenton M. Wiernik. 2026. ggtext: Improved Text Rendering Support for “ggplot2”. https://doi.org/10.32614/CRAN.package.ggtext.

Xie, Yihui. 2014. “knitr: A Comprehensive Tool for Reproducible Research in R.” In Implementing Reproducible Computational Research, edited by Victoria Stodden, Friedrich Leisch, and Roger D. Peng. Chapman; Hall/CRC.

Xie, Yihui. 2015. Dynamic Documents with R and Knitr. 2nd ed. Chapman; Hall/CRC. https://yihui.org/knitr/.

Xie, Yihui. 2026. knitr: A General-Purpose Package for Dynamic Report Generation in R. https://yihui.org/knitr/.

Xie, Yihui, J. J. Allaire, and Garrett Grolemund. 2018. R Markdown: The Definitive Guide. Chapman; Hall/CRC. https://pkg.yihui.org/rmarkdown-book/.

Xie, Yihui, Christophe Dervieux, and Emily Riederer. 2020. R Markdown Cookbook. Chapman; Hall/CRC. https://pkg.yihui.org/rmarkdown-cookbook/.

Xu, Shuangbin, Zehan Dai, Pingfan Guo, et al. 2021. “ggtreeExtra: Compact Visualization of Richly Annotated Phylogenetic Data.” Molecular Biology and Evolution 38 (June): 4039–42. https://doi.org/10.1093/molbev/msab166.

Xu, Shuangbin, Lin Li, Xiao Luo, et al. 2022. “Ggtree: A Serialized Data Object for Visualization of a Phylogenetic Tree and Annotation Data.” iMeta 1 (4): e56. https://doi.org/10.1002/imt2.56.

Yu, Guangchuang. 2020. “Using Ggtree to Visualize Data on Tree-Like Structures.” Current Protocols in Bioinformatics 69 (1): e96. https://doi.org/10.1002/cpbi.96.

Yu, Guangchuang. 2022a. Data Integration, Manipulation and Visualization of Phylogenetic Treess. 1st edition. Chapman; Hall/CRC. https://doi.org/10.1201/9781003279242.

Yu, Guangchuang. 2022b. Data Integration, Manipulation and Visualization of Phylogenetic Treess. 1st edition. Chapman; Hall/CRC. https://www.amazon.com/Integration-Manipulation-Visualization-Phylogenetic-Computational-ebook/dp/B0B5NLZR1Z/.

Yu, Guangchuang. 2022c. Data Integration, Manipulation and Visualization of Phylogenetic Treess. 1st edition. Chapman; Hall/CRC. https://doi.org/10.1201/9781003279242.

Yu, Guangchuang, Tommy Tsan-Yuk Lam, Huachen Zhu, and Yi Guan. 2018. “Two Methods for Mapping and Visualizing Associated Data on Phylogeny Using Ggtree.” Molecular Biology and Evolution 35: 3041–43. https://doi.org/10.1093/molbev/msy194.

Yu, Guangchuang, David Smith, Huachen Zhu, Yi Guan, and Tommy Tsan-Yuk Lam. 2017. “ggtree: An r Package for Visualization and Annotation of Phylogenetic Trees with Their Covariates and Other Associated Data.” Methods in Ecology and Evolution 8: 28–36. https://doi.org/10.1111/2041-210X.12628.