The hardware and bandwidth for this mirror is donated by dogado GmbH, the Webhosting and Full Service-Cloud Provider. Check out our Wordpress Tutorial.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]dogado.de.
ggforestplotR is built for coefficient-driven forest
plots that stay inside a normal ggplot2 workflow.
Use the package in one of three ways:
tidy_forest_model()
or ggforestplot() call broom::tidy().add_forest_table() or
add_split_table() after styling the main plot.This article covers the basic entry points and the minimum data you need.
The simplest input is a data frame with a term, estimate, and confidence limits. If your columns use different names, map them explicitly.
basic_coefs <- data.frame(
term = c("Age", "BMI", "Treatment"),
estimate = c(0.10, -0.08, 0.34),
conf.low = c(0.02, -0.16, 0.12),
conf.high = c(0.18, 0.00, 0.56)
)
ggforestplot(basic_coefs)Use grouping when you want related variables separated
into labeled panels. Add striped_rows = TRUE to color
alternating rows in the plot.
sectioned_coefs <- data.frame(
term = c("Age", "BMI", "Smoking", "Stage II", "Stage III", "Nodes"),
estimate = c(0.10, -0.08, 0.20, 0.34, 0.52, 0.28),
conf.low = c(0.02, -0.16, 0.05, 0.12, 0.20, 0.06),
conf.high = c(0.18, 0.00, 0.35, 0.56, 0.84, 0.50),
section = c("Clinical", "Clinical", "Clinical", "Tumor", "Tumor", "Tumor")
)
ggforestplot(
sectioned_coefs,
grouping = "section",
striped_rows = TRUE,
stripe_fill = "grey94"
)Use add_forest_table() to add a summary table to your
forest plot.
tabled_coefs <- data.frame(
term = c("Age", "BMI", "Smoking", "Stage II", "Stage III"),
estimate = c(0.12, -0.10, 0.18, 0.30, 0.46),
conf.low = c(0.03, -0.18, 0.04, 0.10, 0.18),
conf.high = c(0.21, -0.02, 0.32, 0.50, 0.74),
sample_size = c(120, 115, 98, 87, 83)
)
ggforestplot(tabled_coefs, n = "sample_size", striped_rows = TRUE) +
add_forest_table(
position = "left",
show_n = TRUE,
estimate_label = "Beta"
)Use add_split_table() to create a more traditional
looking forest plot, with summary data on either side of the plot.
ggforestplot(tabled_coefs, n = "sample_size", striped_rows = T) +
add_split_table(
left_columns = c("term", "n"),
right_columns = c("estimate")
)If broom is installed, ggforestplot() can
work directly from a fitted model.
For more detail, see:
ggforestplotR-plot-customization for enhanced
customization of the plots and summary tables.ggforestplotR-data-helpers for
as_forest_data() and tidy_forest_model().These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.
Health stats visible at Monitor.