python-3.x - NetworkX 似乎在 graphml 元素声明中删除了信息——有没有办法恢复它?
问题描述
假设一个 graphml 文件定义了节点:
# foo.graphml
<?xml version="1.0" encoding="utf-8"?>
<graphml xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://graphml.graphdrawing.org/xmlns">
<key id="x" for="node" attr.name="x" attr.type="string" />
<graph>
<node id="abc" type="x">
<data key="x">y</data>
</node>
</graph>
</graphml>
并运行以下 python3 代码:
>>> import networkx
>>> graph = networkx.read_graphml('foo.graphml')
>>> nodes = list(graph.nodes(data=True))
>>> nodes
[('abc', {'x':'y'})]
有没有一种方法或方式可以type="x"
从元素定义中获取属性,或者如果没有某种 kludge 或转换,这是不可能的/不是 graph-ml 的一部分?
解决方案
推荐阅读
- python - 遍历树收集所有子节点,不包括不相关的分支
- tensorflow - 使用 Tensorflow 2 对象检测 API 冻结了哪些层?
- sql - 你能解释一下为什么在语法错误下面的附加代码中吗?
- reactjs - Gatsby 站点托管在 Microsoft IIS 服务器上,为静态资产和其他文件提供 404 错误
- python - 具有多个值的 ModelForm 没有响应
- javascript - 如何根据先前的输入过滤输入字段
- python - 生成锦标赛程序python
- python - Tkinter 可点击/可选择的表格行(检测点击的行)
- plotly - Plotly:更改图例标签并聚合数值
- c++ - 使用索引列表提升多索引删除元素