虽然KGGen未内置可视化功能,但可通过以下方法实现图谱图形化展示:
1. 安装可视化依赖库
使用pip安装networkx和matplotlib:
pip install networkx matplotlib
2. 创建Python脚本
新建visualize.py文件,写入以下代码:
import json
import networkx as nx
import matplotlib.pyplot as plt
# 加载KGGen输出
with open('graph.json', 'r') as f:
data = json.load(f)
# 构建有向图
G = nx.DiGraph()
for rel in data['relations']:
G.add_edge(rel['source'], rel['target'], label=rel['relation'])
# 布局与绘制
pos = nx.spring_layout(G)
nx.draw(G, pos, with_labels=True, node_color='lightblue', font_size=10)
edge_labels = nx.get_edge_attributes(G, 'label')
nx.draw_networkx_edge_labels(G, pos, edge_labels=edge_labels)
plt.show()
3. 运行脚本
在终端执行:
python visualize.py
即可显示交互式图谱窗口,其中:
- 节点代表实体,默认显示为浅蓝色圆形
- 带箭头的边表示关系,箭头方向反映
source→target流向 - 边的标签注明具体关系类型(如”包含”、”开发”)
对于复杂图谱,可调整spring_layout参数优化节点布局,或使用PyVis等库生成Web交互式图表。
本答案来源于文章《KG Gen:从纯文本中自动生成知识图谱的开源工具》




























