Description Usage Arguments Examples
View source: R/24-mosaic-plot-function.r
This function produces a mosaic plot for subgroup analysis
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | plot_mosaic(
dat,
covari.sel,
trt.sel,
resp.sel,
outcome.type,
range.v = NULL,
adj.ann.subgrp = 4,
range.strip = c(-3, 3),
n.brk = 30,
n.brk.axis = NULL,
font.size = c(1, 1, 0.85, 0.85, 1),
title = NULL,
lab.xy = NULL,
strip = "default",
effect = "HR",
lwd. = 2,
sep. = 0.05,
show.overall = TRUE,
palette = "divergent",
col.power = 0.5,
print.ss = FALSE,
col.line = "white",
time = NULL,
show.marginal = TRUE,
show.effect = TRUE,
grid.newpage = TRUE
)
|
dat |
a data set |
covari.sel |
a vector of indices of the two covariates |
trt.sel |
a covariate index specifying the treatment code |
resp.sel |
a covariate index specifying the response variable |
outcome.type |
a string specifying the type of the response variable, it can be "continuous", or "binary" or "survival". |
range.v |
a vector specifying the vertical range of graphical display. |
adj.ann.subgrp |
a parameter adjusting the distance between a point and its corresponding subgroup label. The smaller the value is, the larger the distance is. |
range.strip |
range for the treatment effect scale |
n.brk |
number of breaks in the treatment effect scale |
n.brk.axis |
number of breaks in the axis of the treatment effect scale |
font.size |
a vector specifying the size of labels and text; the first element is for the main title, the second is for for x-axis and y-axis labels; the third is for the legend text of subgroups; the fourth is for the subgroup labels near points; the fifth is for the unit labels on all the axes. |
title |
a string specifying the main title. |
lab.xy |
a list of two strings specifying the labels of the x and y axes. |
strip |
title for the treatment effect scale |
effect |
either "HR" or "RMST". only when outcome.type = "survival" |
lwd. |
line width for the mosaics |
sep. |
separation for the mosaics |
show.overall |
logical. whether to show or not the overall treatment effect in the strip |
palette |
either "divergent" or "hcl" |
col.power |
to be used when palette = "hcl". see colorspace package for reference |
print.ss |
logival indicating whether to show the sample sizes of subgroups |
col.line |
color of the mosaics' border |
time |
time for calculating the RMST |
show.marginal |
logical indicating whether to show the marginal subgroups. only when 2 covariates are used |
show.effect |
logical indicating whether to show effect size using color or not. only when 3 covariates are used |
grid.newpage |
logical. If TRUE (default), the function calls grid::grid.newpage() to start from an empty page. |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 | library(dplyr)
data(prca)
dat <- prca
dat %>%
mutate(bm = factor(ifelse(bm == 0 , "No", "Yes")),
hx = factor(ifelse(hx == 0 , "No", "Yes")),
Treatment = factor(ifelse(rx == 0 , "Control", "Treatment")),
Survival = factor(ifelse(survtime > 24 , "Yes", "No"),
levels = c("Yes", "No")))-> dat
levels(dat$age_group) = c("Young","Middle-aged","Old")
levels(dat$weight_group) = c("Low","Mid","High")
# Change variable names
dat %>%
rename(`Bone Metastasis` = bm,
`Performance rating` = pf,
`History of cardiovascular events` = hx,
`2-year survival` = Survival,
Weight = weight_group,
Age = age_group) -> dat
## 2.a Mosaic plot with 2 variables -----------------------------------------
plot_mosaic(dat = dat,
covari.sel = c(14, 15),
trt.sel = 3,
resp.sel = c(1, 2),
outcome.type = "survival",
range.v = NULL,
adj.ann.subgrp = 4,
range.strip=c(-3, 3),
n.brk = 31,
n.brk.axis = 7, sep. = 0.034,
font.size = c(10, 10, 10, 10, 0.7),
title = NULL, lab.xy = NULL,
strip = "Treatment effect size (log-hazard ratio)",
col.line = "white", lwd. = 2,
effect = "HR", print.ss = FALSE, palette = "hcl")
## 2.b Mosaic plot with 3 variables -----------------------------------------
plot_mosaic(dat = dat,
covari.sel = c(15, 7, 4),
trt.sel = 3,
resp.sel = c(1, 2),
outcome.type = "survival",
range.v = NULL, adj.ann.subgrp = 4,
range.strip=c(-3, 3),
n.brk = 31, n.brk.axis = 7,
font.size = c(10, 10, 10, 10, 0.7),
title = NULL, lab.xy = NULL,
strip = "Treatment effect size (log-hazard ratio)",
effect = "HR", palette = "hcl")
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.