有向无环图(DAG,Direct Acyclic Graph)是一种图模型。图由节点和边组成,节点代表变量,边代表变量之间的某种联系。如果两个节点之间的边是有明确指向的,就是有向图。如果一个有向图从某个节点出发后,无法通过若干条边回到原节点,就是一个有向无环图。贝叶斯网是有向无环图的一个著名的例子。
dagitty(有个对应的R包,也叫dagitty)是一个功能强大的基于浏览器的因果模型图分析工具。ggdag对dagitty包做了一些扩展,可以创建整洁(tidy)的因果有向无环图。ggdag的图形建立在ggplot2和ggraph(见网络数据可视化(3修订版)ggraph:ggplot2的网络可视化)的基础上,可以在R环境下更轻松的绘制DAG。
ggdag可以直接将dagitty包创建的DAG转化为整洁的数据结构。
library(dagitty)
library(ggdag