基于pyecharts的中医药知识图谱可视化

关键词: pyecharts;可视化;中医药知识图谱

摘要: 数据可视化是一种直观展示数据结果和变化情况的方法,可视化有助于知识发现与应用。Neo4j数据库对于知识图谱的展示形式过于单调。因此,本文基于pyecharts对当前处理的中药知识图谱数据进行分析与可视化。以利用图形传递和表达更清晰的中药知识图谱信息,发掘有潜在价值的内容。



1、数据准备

本文数据分析将基于前期准备的中药材知识图谱数据。特别的,本次在中药材知识图谱中增加了“归经”关系,数据已经更新在github中。

开源数据地址:
https://github.com/fengxi177/Knowlegde_Graph_TCM https://gitee.com/fengxi177/Knowlegde_Graph_TCM

2、基于pyecharts的知识图谱可视化

本文将基于pyecharts框架,对中药材知识图谱进行“力导图”和“环形分布”可视化,同时,对中药材地理分布、来源和别名关系进行分析与可视化。

2.1 pyecharts简介

Apache ECharts 是一个由百度开源的数据可视化工具,有很多常见图表设计的api,操作简洁方便,如关系图、地图、折线图、散点图等可视化api。

api详细可访问:
https://github.com/pyecharts/pyecharts。

2.2 中药材知识图谱可视化

前文自顶向下构建中药知识图谱初探已经介绍了中药材知识图谱的构建和neo4j可视化过程,接下来将对该图谱数据利用pyecharts进行可视化。

pyecharts关系图api和具体参数配置可参考示例文档:
https://gallery.pyecharts.org/#/Graph/README。

说明: 本文所有数据分析结果仅限于所收集数据情况。
少量数据的中药知识图谱-环形图

少量数据的中药知识图谱-环形图(部分节点展示图1)

少量数据的中药知识图谱-环形图(部分节点展示图2)

少量数据的中药知识图谱-力导图

较多数据的知识图谱可视化效果

2.3 中药材知识图谱分析结果可视化

(1)中药材分布情况可视化



(2)中药材来源数据可视化


(3)中药材别名数据可视化
经数据分析发现:有别名的中药材占比:0.7591,没有别名的中药材占比:0.2409。
中药材别名数量与对应中药材数量关系图如下。

别名最多的中药是“地锦草”,有57个别名,其关系图如下。

2.4 中药术语知识图谱可视化

中医术语知识为层次结构,其树形图展示如下。
环形树图(部分节点展开)


自底向上的树图(部分节点展开)

3、其他可视化工具

对于知识图谱数据可视化,还可利用D3.js创建更复杂场景的可视化结果。同时,可利用共现网络分析工具cytoscape、gephi等探索更多的数据价值。

4、总结

本文基于pyecharts对已有知识图谱进行了数据分析与可视化展示。


欢迎关注公众号:实用自然语言处理


主要参考文献:
[1] https://github.com/pyecharts/pyecharts


原文首发于微信公众号:实用自然语言处理


基于pyecharts的中医药知识图谱可视化的更多相关文章

  1. 百度大脑UNIT3.0详解之知识图谱与对话

    如今,越来越多的企业想要在电商客服.法律顾问等领域做一套包含行业知识的智能对话系统,而行业或领域知识的积累.构建.抽取等工作对于企业来说是个不小的难题,百度大脑UNIT3.0推出「我的知识」版块专门为 ...

  2. 知识图谱如何运用于RecomSys

    将知识图谱作为辅助信息引入到推荐系统中可以有效地解决传统推荐系统存在的稀疏性和冷启动问题,近几年有很多研究人员在做相关的工作.目前,将知识图谱特征学习应用到推荐系统中主要通过三种方式——依次学习.联合 ...

  3. 知识图谱顶刊综述 - (2021年4月) A Survey on Knowledge Graphs: Representation, Acquisition, and Applications

    知识图谱综述(2021.4) 论文地址:A Survey on Knowledge Graphs: Representation, Acquisition, and Applications 目录 知 ...

  4. GitHub:如何构建一个股票市场知识图谱?(附代码&链接)

    来源:专知 本文约 600007 董事⻓/董事 高燕 女 60 600007 执⾏董事 刘永政 男 50 600008 董事⻓/董事 ··· ··· ··· ··· ··· 注:建议表头最好用相应的英 ...

  5. 知识图谱推理与实践 (2) -- 基于jena实现规则推理

    本章,介绍 基于jena的规则引擎实现推理,并通过两个例子介绍如何coding实现. 规则引擎概述 jena包含了一个通用的规则推理机,可以在RDFS和OWL推理机使用,也可以单独使用. 推理机支持在 ...

  6. 知识图谱实体对齐1:基于平移(translation)的方法

    1 导引 在知识图谱领域,最重要的任务之一就是实体对齐 [1](entity alignment, EA).实体对齐旨在从不同的知识图谱中识别出表示同一个现实对象的实体.如下图所示,知识图谱\(\ma ...

  7. 知识图谱实体对齐2:基于GNN嵌入的方法

    知识图谱实体对齐2:基于GNN嵌入的方法 1 导引 我们在上一篇博客<知识图谱实体对齐1:基于平移(translation)嵌入的方法>中介绍了如何对基于平移嵌入+对齐损失来完成知识图谱中 ...

  8. 知识图谱-生物信息学-医学顶刊论文(Bioinformatics-2021)-MSTE: 基于多向语义关系的有效KGE用于多药副作用预测

    MSTE: 基于多向语义关系的有效KGE用于多药副作用预测 论文标题: Effective knowledge graph embeddings based on multidirectional s ...

  9. 知识图谱顶会论文(ACL-2022) ACL-SimKGC:基于PLM的简单对比KGC

    12.(2022.5.4)ACL-SimKGC:基于PLM的简单对比KGC 12.(2022.5.4)ACL-SimKGC:基于PLM的简单对比KGC 摘要 1.引言 2.相关工作 2.1 知识图补全 ...

随机推荐

  1. kvm命令管理虚拟机

    virsh 既有命令行模式,也有交互模式,在命令行直接输入 virsh 就进入交互模式, virsh 后面跟命令参数,则是命令行模式: KVM 工具集合 libvirt:操作和管理KVM虚机的虚拟化 ...

  2. 在 K8S 上部署以 mysql 数据库作为后端存储的单机版 nacos

    Nacos 被用于: 服务发现 微服务配置信息管理 部署 nacos 时,需要用到如下两个镜像,这两个镜像均来自于 nacos 官方发布到 docker hub 的镜像, nacos/nacos-se ...

  3. Docker网络详细理解-容器网络互通

    这篇文章主要解决以下几个问题: 1.同一个网段的容器互相之间通过ip进行ping通 2.同一个网段的容器互相之间通过容器名,通过使用--link进行ping通,已放弃这种方法 3.同一个网段的容器互相 ...

  4. Java Maven项目之Nexus私服搭建和版本管理应用

    转载自:https://cloud.tencent.com/developer/article/1010603 1.Nexus介绍 Nexus是一个强大的Maven仓库管理器,它极大地简化了自己内部仓 ...

  5. Pjax 下动态加载插件方案

    在纯静态网站里,有时候会动态更新某个区域往会选择 Pjax(swup.barba.js)去处理,他们都是使用 ajax 和 pushState 通过真正的永久链接,页面标题和后退按钮提供快速浏览体验. ...

  6. day08-MySQL事务

    MySQL事务 先来看一个例子 有一张balance表: 需求:将tom的100块钱转到King账户中 执行的操作是: update balance set money = money -100 wh ...

  7. TCP和UDP的区别与联系以及网络字节序和主机字节序的转换函数实践

    TCP和UDP的区别 TCP是一个面向连接的.可靠的.基于字节流的传输层协议. 而UDP是一个面向无连接的传输层协议. 具体来分析,和 UDP 相比,TCP 有三大核心特性: 面向连接:所谓的连接,指 ...

  8. 堆内存动态分配情况和jvm调优方向

    由上图可以看出: 堆中分为新生代(占堆1/3内存)和老年代(占堆2/3内存), 新生代又分为Eden区(占新生代内存的8/10)和survivor区(占新生代内存的2/10), survivor区又分 ...

  9. 忘记了99乘法表啥样的了,python打印下看看

    for i in range(1,10): for j in range(1, i+1): if i == j: print(j, "x", i, "=", i ...

  10. 7_vue的数据代理,双向绑定

    回顾 object.defineProperty() 方法 区别 defineProperty == 给对象定义属性用的 需要传递三个基本参数 需要定义属性的对象名 你要定义的属性叫什么名字(比如给p ...