我想以编程方式创建一个Consort图,描述随机试验中的患者流量。

是否有人有R代码使用DiagrammeR生成此图(请参见下面的链接)?

http://www.consort-statement.org/consort-statement/flow-diagram

最佳答案

在5年前对stackoverflow进行了询问。答案使用软件包图:
creating tree diagram for showing case count using R

Google找到了一些graphviz代码:
http://blogs.sas.com/content/graphicallyspeaking/2016/10/20/outside-box-consort-diagram/

RStudio可以直接预览Graphviz .dot文件:

https://blog.rstudio.org/2015/05/01/rstudio-v0-99-preview-graphviz-and-diagrammer/

或者,

library(DiagrammeR)
consort <- file("consort.dot")
grViz(diagram = consort)
close(consort)

“consort.dot”如下:
digraph g {
start [shape = box, label = "CONSORT Graph"];
node0 [shape = box, label = "All Patients\nN=1000"];
node1 [shape = box, label = "Full Analysis Set\nN=800"];
node2 [shape = box, label = "Excluded\nN=100"];
node3 [shape = box, label = "Not Included\nN=100"];
node4 [shape = box, label = "Safety Set\nN=700"];
node5 [shape = box, label = "Not Dosed\nN=100"];
node6 [shape = box, label = "Treatment A\nN=200"];
node7 [shape = box, label = "Treatment B\nN=150"];
node8 [shape = box, label = "Treatment C\nN=200"];
node9 [shape = box, label = "Treatment D\nN=150"];
start -> node0 -> node1 -> node4 -> {node6 node7 node8 node9};
node0 -> node2;
node0 -> node3;
node1 -> node5;
}

08-25 08:48