Вопросы по проектированию лесных участков

Я создаю лесной участок с помощью функции forestplot ().

Лесной участок выглядит так: Лесной участок

    ## Labels defining subgroups are a little indented!
subgps <- c(4,5,8,9,12,13,16,17,20,21,24,25,28,29,32,33)
data$Variable[subgps] <- paste("  ",data$Variable[subgps]) 
align = c("l", "l", "l", "l", "l", "l", "l", "l", "l", "l", "l")

library(forestplot)
png(file.path(workdir,"Figures\\Forestplot3.png"),width=1280, height=1000)
forestplot(labeltext=tabletext, graph.pos=3, 
           mean=c(NA,NA,data$Point.Estimate), 
           lower=c(NA,NA,data$Low), upper=c(NA,NA,data$High),
           title="Hazard Ratio",
           xlab="<---favors no ß-blockers---  ---favors ß-blockers--->", xlab.position="left",
           hrzl_lines=list("3" = gpar(lwd=1, col="#99999922"), 
                           "5" = gpar(lwd=60, lineend="butt", columns=c(2:6), col="#99999922"),
                           "14" = gpar(lwd=85, lineend="butt", columns=c(2:6), col="#99999922"),
                           "23" = gpar(lwd=60, lineend="butt", columns=c(2:6), col="#99999922"),
                           "31" = gpar(lwd=60, lineend="butt", columns=c(2:6), col="#99999922"),
                           "39" = gpar(lwd=60, lineend="butt", columns=c(2:6), col="#99999922"),
                           "47" = gpar(lwd=60, lineend="butt", columns=c(2:6), col="#99999922"),
                           "54" = gpar(lwd=27, lineend="butt", columns=c(2:6), col="#99999922")),
           txt_gp=fpTxtGp(label=gpar(cex=1.25),
                          ticks=gpar(cex=1.1),
                          xlab=gpar(cex = 1.2),
                          title=gpar(cex = 1.2)),
           col=fpColors(box="blue", lines="black", zero = "gray50"),
           zero=1, cex=0.9, lineheight = "auto", boxsize=0.5, colgap=unit(6,"mm"),
           lwd.ci=2, ci.vertices=TRUE, ci.vertices.height = 0.4)
x = .353
y0 = .08
y1 = .91
grid.lines(c(x, x), c(y0, y1), default.units = "npc",
           gp = gpar(lwd = 1.7, col="#880000"))

dev.off()

У меня две проблемы с дизайном:

  1. В верхнем розовом пузыре видно, что возникла проблема с выравниванием текста. Как я могу это изменить?

  2. В нижнем розовом пузыре проблема с серым фоном. Он определяется как 54 = gpar (lwd = 27, lineend = butt, columns = c (2: 6), col = # 99999922)), но если я выберу строку 53 или строку 54, это не сработает. Так что серый фон не подходит к тексту.

Кто-нибудь может помочь? Спасибо!


person Alexander-P    schedule 23.06.2020    source источник
comment
Есть у кого-нибудь идеи?   -  person Alexander-P    schedule 23.06.2020
comment
Это НЕ лесной участок. См. Допустимое использование этого термина на странице Википедии или в руководстве автора пакета. cran.r-project.org/web/packages/forestplot/ виньетки /   -  person IRTFM    schedule 21.05.2021


Ответы (1)


Для выравнивания вы должны иметь возможность использовать align в аргументах. В последнем случае это, скорее всего, просто случай, когда ваш график слишком велик, попробуйте просто увеличить высоту до 1200 и посмотрите, решит ли это вашу проблему. В вашем примере не хватало labeltext, и поэтому немного сложно проверить, устраняет ли это ваши проблемы.

person Max Gordon    schedule 29.06.2020
comment
Спасибо @Max. К сожалению, увидим свой ответ раньше. Я уже использовал аргумент выравнивания, но он не работает. Я редактировал это выше в начале. Вы можете помочь? - person Alexander-P; 19.10.2020
comment
@MaxGordon Есть несколько примеров статистически наивных пользователей вашего forestplot пакета, использующих его для графического отображения рисков или отношений шансов для нескольких искажающих факторов в одном исследовании. Ваша виньетка правильно описывает использование термина «лесной участок» для описания графического представления результатов нескольких исследований, но кажется, что гибкость построения позволяет людям думать, что, поскольку они использовали функцию forestplot, они создали лесной участок. В идеале это должно быть четко указано на странице справки и, возможно, с сообщением о загрузке пакета. - person IRTFM; 21.05.2021
comment
@IRTFM - да, просто потому, что он компилируется, это не обязательно должно быть правильным. Я не думаю, что предупреждение настолько полезно - после всех предупреждений о файлах cookie и других предупреждений, которые нам бросают, я думаю, что большинство из нас стали невосприимчивыми к ним (то есть просто игнорируют их). Хотя улучшение документации - это всегда хорошо, подумайте о том, чтобы отправить PR на GitHub, и я с радостью посмотрю на него. - person Max Gordon; 21.05.2021