首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在forestplot中将特定行的字体更改为粗体

在forestplot中将特定行的字体更改为粗体
EN

Stack Overflow用户
提问于 2021-02-11 16:36:33
回答 1查看 86关注 0票数 0

我使用"forestplot“包编写了一个脚本。我想要将变量分组到某些类别中,我希望以粗体显示,以便强调这些类别。如何调整我的脚本,使其仅以粗体显示某些行,即风险因素OR (95% CI)、患者特征、用药史、合并症、手术史等?我有两列和18行。有人能帮帮我吗?我将非常感激!我的脚本如下:

代码语言:javascript
复制
tabletext <- cbind(
  c("Risk factor" ,"Patient characteristics","Sex, male*", "Bmi (5 points)", 
    "Alcohol (5 units)", "Smoking*","Medication history",
    "Steroid use", "Anticoagulant use*","Comorbidities",
    "COPD GOLD 1/2", "COPD GOLD 3/4", "Other pulmonary disease",
     "Surgical history",
    "Previous colorectal surgery*", 
    "Previous abdominal surgery (other)","Other", "HIPEC*"),
  c("OR (95% CI)",NA, "1.78 (1.20-2.68)", "1.15 (0.95-1.38)", "1.04 (0.94-1.14)",
    "1.78 (1.11-2.80)", NA," 1.40 (0.68-2.67)", "1.55 (1.02-2.32)",NA, 
    "1.40 (0.70-2.61)", "1.56 (0.42-4.67)", "1.78 (0.63-4.28)",NA,
    "1.61 (1.03-2.49)", "0.80 (0.47-1.32)",NA, "4.14 (2.14-7.73)"))


?fpTxtGp
require(forestplot)
forestplot(tabletext,
txt_gp = fpTxtGp(label = list(gpar(fontfamily = "Times",
                                   fontface="bold"),
                       gpar(fontfamily = "",
                                              col = "black"))),
  df_c,new_page = TRUE,
           boxsize = 0.2,
           is.summary = c(rep(FALSE,32)),
           clip = c(0,17),
  xlab = 'Odds ratio with 95% confidence interval
  * indicates significance',
  xlog = FALSE, 
           zero = 1,
  plotwidth=unit(12, "cm"),
  colgap=unit(2, "mm"),
  
           col = fpColors(box = "royalblue",
                          line = "darkblue",
                          summary = "royalblue"))
EN

回答 1

Stack Overflow用户

发布于 2021-08-05 21:59:17

不清楚df_c是什么,所以我只是根据您的tabletext矩阵创建了它:

代码语言:javascript
复制
df_c <- data.frame(mean = c(NA, NA, 1.78, 1.15, 1.04, 1.78, NA, 1.4, 1.55,
                            NA, 1.4, 1.56, 1.78, NA, 1.61, 0.8, NA, 4.14),
                   lower = c(NA, NA, 1.2, 0.95, 0.94, 1.11, NA, 0.68, 1.02, NA, 0.7,
                             0.42, 0.63, NA, 1.03, 0.47, NA, 2.14),
                   upper = c(NA, NA, 2.68, 1.38,1.14, 2.8, NA, 2.67,2.32, NA,
                             2.61, 4.67, 4.28, NA, 2.49, 1.32, NA, 7.73))

接下来,只需调整传递给is.summary的值

代码语言:javascript
复制
   forestplot(tabletext,
               txt_gp = fpTxtGp(label = list(gpar(fontfamily = "Times"),
                                             gpar(fontfamily = "",
                                                  col = "black"))),
               df_c,new_page = TRUE,
               boxsize = 0.2,
               is.summary = c(TRUE, TRUE, rep(FALSE, 4),
                              TRUE, FALSE, FALSE, TRUE,
                              rep(FALSE,3), TRUE, rep(FALSE,4)),
               clip = c(0,17),
               xlab = 'Odds ratio with 95% confidence interval
      * indicates significance',
               xlog = FALSE, 
               zero = 1,
               plotwidth=unit(12, "cm"),
               colgap=unit(2, "mm"),
               
               col = fpColors(box = "royalblue",
                              line = "darkblue",
                              summary = "royalblue"))

这将生成以下图:

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66151262

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档