DiagrammeR生成CONSORT图:标题添加与节点填充色失效问题求助
解决DiagrammeR生成CONSORT图的两个问题
1. 添加图表标题
在graph属性中添加label参数指定标题内容,用labelloc="t"将标题固定在图表顶部,还可通过fontsize调整标题字号:
graph [layout=dot, overlap = true, fontsize = 10, label="CONSORT 流程图", labelloc="t", fontsize=14]
2. 修复节点填充颜色不生效的问题
fillcolor属性需要配合style="filled"才能触发填充效果,在全局node属性里补充该参数即可:
node [shape=box, fontname = Helvetica, color = blue, fillcolor = red, style="filled"]
修改后的完整代码
library(tidyCDISC) library(tidyverse) library(ggalluvial) library(DiagrammeR) data('adsl', package='tidyCDISC') # 统计安全人群及分组数据 pop1 <- adsl %>% rename_all(tolower) %>% filter(saffl=='Y') %>% count() %>% mutate(col1=paste0('Safety Population\n(N=',n,')')) popt <- adsl %>% rename_all(tolower) %>% filter(saffl=='Y') %>% group_by(trt01a) %>% count() %>% mutate(col1=paste0(trt01a,'\n(N=',n,')')) DiagrammeR::grViz(" digraph box { graph [layout=dot, overlap = true, fontsize = 10, label='CONSORT 流程图', labelloc='t', fontsize=14] node [shape=box, fontname = Helvetica, color = blue, fillcolor = red, style='filled'] total_population [label = '@@1']; placebo [label = '@@2']; xanomeline_low_dose [label = '@@3']; xanomeline_high_dose [label = '@@4']; total_population -> placebo; total_population -> xanomeline_low_dose; total_population -> xanomeline_high_dose } [1]: pop1$col1 [2]: popt$col1[1] [3]: popt$col1[3] [4]: popt$col1[2] ")
内容的提问来源于stack exchange,提问作者jkatam
相关产品推荐
相关产品推荐

