加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

如何使用python和graphviz标记图形的边缘

发布时间:2020-12-20 11:35:41 所属栏目:Python 来源:网络整理
导读:如何在使用 python和xdot构造的图形中标记边缘 我已经找到了一种使用点语言在python中构建图形的方法. import sysimport threadingimport timeimport networkx as nx import xdot import gtkclass MyClass(threading.Thread): def __init__(self): threading
如何在使用 python和xdot构造的图形中标记边缘

我已经找到了一种使用点语言在python中构建图形的方法.

import sys
import threading
import time
import networkx as nx 
import xdot 
import gtk

class MyClass(threading.Thread):

    def __init__(self):
        threading.Thread.__init__(self) 
        self.graph = nx.DiGraph(name="my_tree")
        self.xdot = xdot.DotWindow()
        self.xdot.connect('destroy',gtk.main_quit)

    def run(self):
        gtk.main()

    def add_node(self,parent,node):

        self.graph.add_edge(parent,node)
        self.xdot.set_dotcode(nx.to_agraph(self.graph).to_string())
        self.xdot.show_all()

def main(argv=None):

    gtk.gdk.threads_init()
    my_class = MyClass()
    my_class.start()

    my_class.add_node('operating_system','file_mgmt')
    time.sleep(1.5)

if __name__ == "__main__":
    sys.exit(main())

上述程序将自动创建一个在操作系统和文件管理概念之间具有优势的图形.概念将在省略号中标记.

我的问题是使用python语言在该边缘上标记标签的“子类”,以便概念之间的关系清晰

有没有可用的机制?

解决方法

您可以将edge的标签指定为add_edge的命名参数:

self.graph.add_edge(parent,node,label='subclass')

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读