带下标的PyDot节点标签

时间:2019-05-14 12:22:55

标签: python pydot

我为pydot图附加了代码,我希望其中一个标签带有下标。我尝试了以下操作,但仅将其呈现为Y<SUB>2</SUB>。如何使用下标获取它?

import pydot

graph = pydot.Dot(graph_type='digraph', rankdir="LR")
# add node
graph.add_node(pydot.Node('X', label='X'))
graph.add_node(pydot.Node('Y', label='Y<SUB>2</SUB>'))

# add edege
graph.add_edge(pydot.Edge('X', 'Y'))
graph.write_png("mygraph.png")

2 个答案:

答案 0 :(得分:1)

如果您的环境中设置了LaTex,则可以使用LaTex标记进行图形操作。您将必须通过LaTex传递结果图,因此需要dot2tex工具https://dot2tex.readthedocs.io/en/latest/

graph.add_node(pydot.Node('Y', label='$Y_{2}$'))

答案 1 :(得分:0)

尽管对某些人来说可能很明显,但对该问题的实际答案可能是:

location /zalenium {
   proxy_pass http://someserver:4444/grid/admin/live;
}

然后使用

生成pdf
import dot2tex
import pydot

graph = pydot.Dot(graph_type='digraph', rankdir="LR")
# add node
graph.add_node(pydot.Node('X', label='X'))
#graph.add_node(pydot.Node('Y', label='Y<SUB>2</SUB>'))
graph.add_node(pydot.Node('Y', label='$$Y_{2}$$'))

# add edege
graph.add_edge(pydot.Edge('X', 'Y'))
#graph.write_png("mygraph.png")

# Export to tex
texcode = dot2tex.dot2tex(graph.to_string(),format='tikz',texmode='math',crop=True)
with open("test.tex", "w") as f: 
    f.write(texcode)