From 00fa7a67206dc63eff0b9a59f66114c5c59911fa Mon Sep 17 00:00:00 2001 From: Teun van den Brand Date: Thu, 20 Mar 2025 13:34:34 +0100 Subject: [PATCH] add `as.gtable()` method --- DESCRIPTION | 2 +- NAMESPACE | 2 ++ R/plot_patchwork.R | 5 +++++ 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/DESCRIPTION b/DESCRIPTION index cb1774e..55de36d 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -20,7 +20,7 @@ License: MIT + file LICENSE Encoding: UTF-8 Imports: ggplot2 (>= 3.0.0), - gtable, + gtable (>= 0.3.6), grid, stats, grDevices, diff --git a/NAMESPACE b/NAMESPACE index 1fc6a09..00434f0 100644 --- a/NAMESPACE +++ b/NAMESPACE @@ -9,6 +9,7 @@ S3method("[[<-",patchwork) S3method("|",ggplot) S3method(add_patches,ggplot) S3method(add_patches,patchwork) +S3method(as.gtable,patchwork) S3method(as.list,patchwork) S3method(as_patch,formula) S3method(as_patch,gList) @@ -150,6 +151,7 @@ importFrom(grid,upViewport) importFrom(grid,valid.just) importFrom(grid,viewport) importFrom(grid,widthDetails) +importFrom(gtable,as.gtable) importFrom(gtable,gtable) importFrom(gtable,gtable_add_cols) importFrom(gtable,gtable_add_grob) diff --git a/R/plot_patchwork.R b/R/plot_patchwork.R index b0d3d4e..95a6856 100644 --- a/R/plot_patchwork.R +++ b/R/plot_patchwork.R @@ -290,6 +290,11 @@ patchworkGrob <- function(x) { class(gtable) <- setdiff(class(gtable), 'gtable_patchwork') gtable } + +#' @importFrom gtable as.gtable +#' @export +as.gtable.patchwork <- function(x, ...) patchworkGrob(x) + plot_table <- function(x, guides) { UseMethod('plot_table') }