#' Print, summary and plot methods for objects created using 'dmetar' functions
#'
#' Print, summary and plot S3 methods for objects of class \code{direct.evidence.plot}, \code{find.outliers},
#' \code{influence.analysis}, \code{multimodel.inference}, \code{pcurve}, \code{power.analysis},
#' \code{subgroup.analysis.mixed.effects}, and \code{sucra}.
#'
#'
#' @param x An object of class \code{influence.analysis}.
#' @param which Which plot(s) should be generated? Can be either \code{"all"} (default), \code{"baujat"}, \code{"influence"},
#' \code{"ES"} (forest plot sorted by effect size) or \code{"I2"} (forest plot sorted by heterogeneity).
#' @param ... Additional arguments.
#'
#' @details
#' A total of four package-specific S3 methods are provided in \code{dmetar}: S3 methods for \code{print},
#' \code{summary}, \code{plot} and \code{forest}. Outputs from \code{print} and \code{summary} are always identical.
#'
#' @author Mathias Harrer & David Daniel Ebert
#'
#'
#' @importFrom grid grid.newpage grid.draw
#' @importFrom gridExtra grid.arrange
#' @importFrom stats as.formula hat influence ks.test optimize pbinom pchisq pf pnorm pt punif qchisq qf qnorm qt reformulate reorder setNames uniroot
#'
#' @export
#' @method plot InfluenceAnalysis
plot.InfluenceAnalysis = function(x, which = "all", ...){
if (which == "all"){
if (class(x)[2] == "rsp"){
# Baujat plot
plot(x$BaujatPlot)
# Influence Characteristics
grid.newpage()
grid.draw(x$InfluenceCharacteristics)
# Forest (ES)
suppressWarnings(suppressMessages(plot(x$ForestEffectSize)))
# Forest (I2)
suppressWarnings(suppressMessages(plot(x$ForestI2)))
}
if (class(x)[2] == "rsp.null"){
title = textGrob("Influence Diagnostics", gp = gpar(fontface = "bold"))
suppressWarnings(
suppressMessages(
gridExtra::grid.arrange(x$BaujatPlot,
x$InfluenceCharacteristics,
x$ForestEffectSize,
x$ForestI2,
ncol = 2) ))
}
}
if (which == "baujat" | which == "Baujat" | which == "baujat plot" | which == "Baujat Plot" | which == "baujatplot" | which == "Baujatplot"){
# Baujat plot
plot(x$BaujatPlot)
}
if (which == "influence" | which == "influence plot" | which == "Influence" | which == "Influence Plot" | which == "influence diagnostics"){
# Influence Characteristics
grid.newpage()
grid.draw(x$InfluenceCharacteristics)
}
if (which == "forest es" | which == "es" | which == "ES"){
# Forest (ES)
suppressWarnings(suppressMessages(plot(x$ForestEffectSize)))
}
if (which == "forest i2" | which == "i2" | which == "I2"){
# Forest (I2)
suppressWarnings(suppressMessages(plot(x$ForestI2)))
}
}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.