首页 > 解决方案 > Dagitty 中的 LateX 名称

问题描述

有谁知道在Dagitty中使用 LateX 制作变量标签的方法(例如,我想包含下标和希腊语:例如 $\lambda_1$)。我知道在基数 R 的图中,有办法做到这一点。

这是一个最小的例子

   library(dagitty)
    g = dagitty('dag{
  A [pos="-1,0.5"]
  W [pos="0.893,-0.422"]
  X [pos="0,-0.5"]
  Y [pos="1,0.5"]
  A -> Y
  X -> A
  X -> W
  X -> Y
}')
plot(g)

这给出了一个以 A、B 等为标签的图。

相反,我希望在绘图上显示类似 $\alpha$ 而不是 A 的东西。

标签: rlatexdirected-acyclic-graphs

解决方案


事实证明这有点困难,因为dagitty假设图中的标签是纯文本。它的分支可以使用

remotes::install_github("https://github.com/dmurdoch/dagitty", "nodelabels", "r")

将允许您使用“plotmath”表示法重命名节点(参见?plotmathR)。例如,

   library(dagitty)
    g = dagitty('dag{
  A [pos="-1,0.5"]
  W [pos="0.893,-0.422"]
  X [pos="0,-0.5"]
  Y [pos="1,0.5"]
  A -> Y
  X -> A
  X -> W
  X -> Y
}')
plot(g, nodenames = expression(X = lambda[1]))

将 X 节点重命名为$\lambda_1$

截屏


推荐阅读