如何在配偶图中添加图例?

问题描述 投票:0回答:1

我需要在 {consort} 包生成的联合图中添加图例,但我不能。

我尝试使用

text
函数插入:

plot(fluxo)
text(1, 1, "text")

Error in text.default(0, 0, "text") : plot.new has not been called yet

所以:

plot(fluxo)
plot.new()

Error in plot.new() : figure margins too large

有解决办法吗?

r plot text
1个回答
0
投票
library(consort)
library(grid)

set.seed(1001)
N <- 300

trialno <- sample(c(1000:2000), N)
exc <- rep(NA, N)
exc[sample(1:N, 15)] <- sample(c("Sample not collected", "MRI not collected", "Other"),
                               15, replace = T, prob = c(0.4, 0.4, 0.2))

arm <- rep(NA, N)
arm[is.na(exc)] <- sample(c("Conc", "Seq"), sum(is.na(exc)), replace = T)

fow1 <- rep(NA, N)
fow1[!is.na(arm)] <- sample(c("Withdraw", "Discontinued", "Death", "Other", NA),
                            sum(!is.na(arm)), replace = T, 
                            prob = c(0.05, 0.05, 0.05, 0.05, 0.8))
fow2 <- rep(NA, N)
fow2[!is.na(arm) & is.na(fow1)] <- sample(c("Protocol deviation", "Outcome missing", NA),
                                          sum(!is.na(arm) & is.na(fow1)), replace = T, 
                                          prob = c(0.05, 0.05, 0.9))
df <- data.frame(trialno, exc, arm, fow1, fow2)
head(df)
#>   trialno  exc  arm  fow1 fow2
#> 1    1086 <NA> Conc  <NA> <NA>
#> 2    1418 <NA>  Seq  <NA> <NA>
#> 3    1502 <NA> Conc Death <NA>
#> 4    1846 <NA> Conc  <NA> <NA>
#> 5    1303 <NA> Conc Death <NA>
#> 6    1838 <NA>  Seq  <NA> <NA>

out <- consort_plot(data = df,
                    order = c(trialno = "Population",
                              exc    = "Excluded",
                              arm     = "Randomized patient",
                              fow1    = "Lost of Follow-up",
                              trialno = "Finished Followup",
                              fow2    = "Not evaluable",
                              trialno = "Final Analysis"),
                    side_box = c("exc", "fow1", "fow2"),
                    allocation = "arm",
                    labels = c("1" = "Screening", "2" = "Randomization",
                               "5" = "Final"),
                    cex = 0.6)

plot(out)
grid.text("SOMETHING NICE AND BIG", x = 0.3, y = 0.9, gp = gpar(col = "red", fontsize = 18))

创建于 2024-05-23,使用 reprex v2.1.0

© www.soinside.com 2019 - 2024. All rights reserved.