文/三省
![](https://img.haomeiwen.com/i8147732/56a2d9dd7b872d05.png)
想法来自一个朋友的问题:能不能把词根和单词的对应关系直观展示出来。
第一步考虑用什么工具展示最合适。
1. 考虑过用思维导图,但是思维导图适合从一点出发向外延伸。词根和单词之间应该是网状结构。同一个词根与不同单词有关,同一个单词与不同的词根,词缀有联系。不同词根之间也有同义或者反义的联系。所以我们要呈现的是网状结构,因此思维导图不太合适。
2. 考虑过用OneNote,可以通过复制链接实现同页面跳转,实现关联。
![](https://img.haomeiwen.com/i8147732/fe511712ec548f2a.png)
把词根和单词输入到不同的文本框,图片中蓝色显示的词根就是超链接,点击后会跳转(即使在同一页也能跳转)。
但是问题,这个效果只能通过手动整理,工作量非常大,最后呈现出来的效果可能是,整页密密麻麻都是黑色加蓝色的单词,词根。也没法很直观的看出什么关系来。
3. 发现了Gephi这个工具可以满足要求。这个工具多用来呈现互联网社交媒体中人物的网状关系,小说中的人物关系。核心思想是:共现关系。比如小说中人物在同一行出现,在同一段落出现,同一章节出现,为这些共现关系设定权重值。最后生成一个角色的共现关系列表,导入Gephi就能绘制出关系图了。
其实共现关系完全可以用在单词和词根上。最最关键的还有一点,可以通过编程提取上述的共现关系。
下面介绍如何运用python程序处理数据,以及用Gephi绘图的过程。
1. 准备好词根词缀文件。避免侵权不方便提供下载链接。不过可以展示一下,原数据长成这样:
![](https://img.haomeiwen.com/i8147732/9784e802c07ef3af.png)
在网上很容易找到。
2. 了解Gephi需要的数据格式。非常简单,包含Source和Target两列数据的CSV文件即可。Source是关系的起点,Target是终点。词根和单词应该是互相关联的,所以要建立双向关系。格式如下图所示:
![](https://img.haomeiwen.com/i8147732/c8f3297f069a8b3d.png)
3. 用python处理数据。代码如下:
![](https://img.haomeiwen.com/i8147732/d13a579da6db6b0d.png)
![](https://img.haomeiwen.com/i8147732/2399c0b7c595b0dd.png)
核心:运用正则提取文件中的单词和词根,在运用combinations方法实现排列组合。
![](https://img.haomeiwen.com/i8147732/f0bb8011d8d9c5b3.png)
4. Gephi导入数据并绘图
![](https://img.haomeiwen.com/i8147732/cb1cb7a463558c5a.png)
如果不想显示节点之间的指向箭头,导入数据后,如下界面“图类型”选择“无向的”
![](https://img.haomeiwen.com/i8147732/7da6386cd778ecb4.png)
![](https://img.haomeiwen.com/i8147732/e6a2a88d240ea026.png)
导入数据后点击预览(如下图中标注1所示),点击2所示“节点”,点击3进入颜色调整界面,点击4选择颜色显示模式,点击5在几种默认的颜色配置中选择一种,点击6应用颜色方案。在图中标注2边上有“边”这个选项,它对应的显示配置修改方法与节点类似。
配置到这,图形显示还是很乱,选择布局方案可以解决这个问题。点击图中7所示的下拉列表,选择Yifan Hu这个默认布局方案。点击8运行。图形显示区点击9调整背景颜色(白底或黑底),点击10开或者关显示标注,点击11设置按照哪个数据显示标注(Id/Lable)。
在标注3右侧,是设置节点大小的按钮。
![](https://img.haomeiwen.com/i8147732/67e5bb6a22a24b9e.png)
至此,应该可以调出比较满意的效果图了。
![](https://img.haomeiwen.com/i8147732/054733861851ac00.png)
至于从可视化效果图中可以挖掘出哪些有价值的信息,还在整理中。下篇文章再介绍。
网友评论