Jupyter yFiles 中的节点位置属性

问题描述 投票:0回答:1

我正在 Jupyter 笔记本中使用 yfiles_jupyter_graphs 包来可视化使用 NetworkX 创建的图形。

我想实现两件事:

  1. 访问节点位置:在图表布局后,如何以编程方式访问每个节点的位置?我想检索所有节点的 (x, y) 坐标。

  2. 将图表导出为 GraphML:有没有办法使用代码将图表直接保存为 GraphML 文件,而无需手动单击小部件中的“导出到 yEd Live”?

我尝试了 .get_node_position_mapping() 方法,但输出是:

任何指导或示例将不胜感激!

python yfiles
1个回答
0
投票

(我知道该插件的开发人员以及实现。)

  1. 没有直接的方法可以从小部件获取坐标。坐标仅存在于呈现图形的 HTML/Javascript 小部件内。 python 内核(以及笔记本单元)无法访问它们。目前,您可以从小部件获取的唯一信息是项目的选择状态。您找到的映射函数是从节点数据到用作小部件初始输入的位置的映射。它不能用于读回稍后的值,因为它是您可以提供给它的实现。您只会调用自己的代码或评估您的绑定。

  2. 在与图形交互或布局后,没有编程方法可以保存图形。这是一个用户体验和“政治”决定。该小部件旨在用作交互式小部件,以方便地探索图形。它并不意味着充当以编程方式创建可视化的布局引擎。如果您希望以编程方式使用 yFiles 布局,则应该考虑使用 yFiles 库。它们涵盖了更多功能,但现在只能免费评估,因为与免费小部件相比,这些是商业图表库。

© www.soinside.com 2019 - 2024. All rights reserved.