Learn R Programming

Introducing the Orchard Plot for Meta-analysis

Citing orchaRd

To cite orchaRd 2.0 in publications one can use the following reference:

Shinichi Nakagawa, Malgorzata Lagisz, Rose E. O'Dea, Patrice Pottier, Joanna Rutkowska, Alistair M. Senior, Yefeng Yang, Daniel W.A. Noble. 2023. orchaRd 2.0: An R package for visualizing meta-analyses with orchard plots. Methods in Ecology and Evolution, https://doi.org/10.1111/2041-210X.14152 (preprint = EcoEvoRxiv, https://doi.org/10.32942/X2QC7).

For earlier versions please cite:

Nakagawa, S., Lagisz, M., O'Dea, R. E., Rutkowska, J., Yang, Y., Noble, D. W., & Senior, A. M. (2019). The Orchard Plot: Cultivating Forest Plots for Use in Ecology, Evolution and Beyond. Research Synthesis Methods https://doi.org/10.1002/jrsm.1424 12: 4-12 (preprint = EcoEvoRxiv https://doi.org/10.32942/osf.io/epqa7)

Installation

To install orchaRd use the following code in R:

install.packages("pacman")
pacman::p_load(devtools, tidyverse, metafor, patchwork, R.rsp, emmeans)

devtools::install_github("daniel1noble/orchaRd", force = TRUE)
library(orchaRd)

How to use?

We detail how to use the orchaRd package in the vignette.

Issues with orchaRd 2.0?

Please note that orchaRd 2.0 is still under active development and testing. If you use it, you should check that the results are what you expect. We do have a number of tests already in place, but there may still be situations where it fails. If you find a bug or a situation that doesn't match your expectations let us know by lodging an issue on GitHub.

Changelog

Version 2.2.0 (2026-04-18)

  • Breaking change: Renamed tree.order argument to mod.order throughout the package, vignette, and documentation for clarity and consistency.
  • Added k.size, est, and est.size arguments to orchard_plot() for flexible annotation of sample size and effect estimates.
  • orchard_plot() now preserves the order of moderator levels as they appear in the data (fixes legend/plot alignment, #92).
  • Improved whitespace trimming for moderator/group/condition columns to prevent matching errors.
  • Enhanced warning for random-slope prediction intervals.
  • All @examples lines in documentation now ≤100 characters for CRAN compliance.
  • Fixed: angle/rotation for moderator labels works regardless of flip (#33).
  • Fixed: k labels are centered when flip=FALSE (#34).
  • Fixed: Windows CI convergence issue for HCS models.
  • Added new vignette examples for k.size, est, and est.size.
  • Added a worked example to the vignette showing how to combine orchard plots with summary tables using broom, gt, and patchwork (closes #93).
  • All tests updated and passing (335 tests).
  • Version bumped to 2.2.0.
  • Fix Windows CI: increase iter limits for gamma2 convergence test
  • Fix angle and k-label alignment when flip=FALSE (#33, #34)
  • Fix Rd line widths >100 chars and improve random-slope PI warning (#71)
  • Fix whitespace in moderator levels & add vignette examples
  • Fix orchard_plot() with non-capitalised moderator categories (closes #64)
  • Add point.size parameter to orchard_plot() and bubble_plot() (closes #57)
  • Fix prediction interval calculation for HCS/GEN models (closes #46)
  • Fix for #92

See the vignette for usage examples of new features.

Copy Link

Version

Install

install.packages('orchaRd')

Version

2.2.1

License

GPL (>= 2)

Maintainer

Daniel Noble

Last Published

July 23rd, 2026

Functions in orchaRd (2.2.1)

.bbp_axis_labels

Add axis labels to bubble plot.
.calc.skewness

.calc.skewness
.colour_blind_palette

Colour blind palette
.calc.kurtosis

.calc.kurtosis
.bbp_theme

Bubble plot ggplot2 theme settings.
.bbp_conf_interval

Add confidence interval lines to bubble plot.
.bbp_estimate_line

Add estimate line to bubble plot.
.lnM

.lnM
.orcd_point_estimates

Add point estimates for orchard plot
.bbp_pred_interval

Add prediction interval lines to bubble plot.
.get_estimates

Get Leave-One-Out Model Estimates
.is_model_valid

Validate Model Argument
.get_kg_labels

Compute k and g labels for each condition.
.is_group_valid

Validate Group Argument
.orcd_conf_intervals

Add confidence intervals
.is_metafor_object

Check if Object is from metafor Package
.create_tmp_phylo_matrix

Create Temporary Phylogenetic Matrix For Leave-One-Out Analysis
.sv_jack

Jackknife Estimation of Skewness and Kurtosis for computing sampling variances
.safe_lnM_indep

SAFE bootstrap : independent samples
.orcd_theme

Theme for orchard plot
.column_is_categorical

Check if Column is Categorical
.get_results

Get the output from mod_results
.orcd_k_and_g

Add k and g to base orchard plot
.set_condition

Set the condition variable for plotting.
.orcd_colour_blind_palette

Set a colour-blind-friendly palette
.get_effectsizes

Get Leave-One-Out Effect Sizes
.r.to.zr

Fisher Z-transformation of Correlation Coefficient
.safe_lnM_dep

SAFE bootstrap : dependent samples
.column_exists

Check if Column Exists
.extract_model_data

Extract model data used in metafor model
.orcd_legends

Add legends to orchard plot
.order_mod

Reorder the tree
.orcd_axis_labels

Add axis labels to orchard plot
fish

fish
.bbp_kg_labels

Add k and g annotation labels to bubble plot.
.create_tmp_vcv

Create Temporary Variance-Covariance Matrix
.orcd_reference_line

Add reference line for orchard plot
.orcd_pred_intervals

Add prediction intervals
.get_size_scale

Set scale for bubble plot.
geom_pub_stats_naka

geom_pub_stats_naka
.zr.variance

Variance of Fisher Z-transformed Correlation
.set_color_palette

Set Color Palette for Orchard Plot
english

english
firstup

firstup
.run_leave1out

Fit Multiple Meta-Analytic Models For Leave-One-Out Analysis
.set_width

Set width for ggplot2::position_dodge2()
.trimws_col

Trim whitespace from a single column in a data frame
.prune_tree

Prune Phylogenetic Tree For Leave-One-Out Analysis
.bbp_legends

Add and position legends on bubble plot.
.bbp_facets

Add facetting to bubble plot by condition.
.v_lnM

.v_lnM
.validate_phylo_args

Validate Phylogenetic Arguments
eklof

eklof
.validate_robust_args

Validate Robust Variance Estimation Arguments
.validate_vcalc_args

Validate Variance-Covariance Calculation Arguments
get_ints_dat

get_ints_dat
get_data_raw_cont

get_data_raw_cont
lim

lim
glmmTMB_to_rma

Convert a glmmTMB model to an rma.mv-compatible object
get_data_raw

get_data_raw
geom_pub_stats_yang

geom_pub_stats_yang
m1_ml

m1_ml
i2_ml

i2_ml
leave_one_out

Leave-One-Out Analysis for Meta-Analytic Models
is_categorical

Check if an Object is Categorical
mod_results

mod_results
ml_cvh2

ml_cvh2
ml_m1

ml_m1
model_is_valid

Validate 'model'
magnitude_effects

Magnitude Effects using SAFE Bootstrap
m2_ml

m2_ml
num_studies

num_studies
phylo_matrix

phylo_matrix
ml_cvh1

ml_cvh1
matrix_i2

matrix_i2
%>%

Pipe operator
moment_effects

moment_effects
ml_m2

ml_m2
print.orchard

print.orchard
mod_is_valid

Validate 'mod'
pred_interval_esmeans

pred_interval_esmeans
transf_ift

Freeman-Tukey (Double Arcsine) Transformation for proportions
pottier

pottier
orchard_plot

orchard_plot
submerge

submerge
ratio_i2

ratio_i2
r2_ml

r2_ml
orchard_leave1out

Orchard Plot for Leave-One-Out Analysis
pub_bias_plot

pub_bias_plot
transf_percentr

Percentage Relative Change Transformation
transf_percent

Percentage Transformation
transform_mod_results

Transform effect sizes in an orchard object
weighted_var

weighted_var
transf_invlogit

Inverse Logit Transformation
transform_data

Apply a Transformation to Vector
transf_inv_ft

Inverse Freeman-Tukey (Double Arcsine) Transformation for proportions
transf_tanh

Hyperbolic Tangent Transformation
Zr_to_r

Zr_to_r
caterpillars

caterpillars
.MSw

.MSw
cvh1_ml

cvh1_ml
.MSb

.MSb
VCV_dARR

VCV_dARR
R2_calc

R2_calc
bubble_plot

bubble_plot
cvh2_ml

cvh2_ml
cor_diff

Correlation Difference
.add_ghost_points

Add Ghost Points to Orchard Plot
.base_bubble_plot

Create the base bubble plot layer.
.add_ci_lines

Add Confidence Interval Lines to Orchard Plot
.base_orchard_plot

Create base for orchard plot
.bbp_colors

Set fill colors for bubble plot points.