R语言:绘制知识图谱
知识图谱主要是通过将应用数学,图形学,信息可视化技术,信息科学等学科的理论与方法与计量学引文分析、共现分析等方法结合,利用可视化的图谱形象地展示学科的核心结构、发展历史、前沿领域以及整体知识架构达到多学科融合目的的现代理论。
今天我们借助networkD3包里面的simpleNetwork 函数来绘制一个类似CSDN微信开发的知识图谱,效果图如下:
首先我们先来分析一下这张图,图里面的微信支付——微信支付,小程序——小程序,等这些,它们之间本不需要连线,但这里是为了美观好看,才有这些连线,但实际却没有什么意义。使用simpleNetwork 函数不能绘制类似微信支付——微信支付
的这种关系。我把这些数据整理写在了一个TXT文件里面,截图如下。
接下来我们分析一下
simpleNetwork,它的原型如下:
simpleNetwork(Data, Source = NULL, Target = NULL, height = NULL,
width = NULL, linkDistance = 50, charge = -200, fontSize = 7,
fontFamily = "serif", linkColour = "#666", nodeColour = "#3182bd",
nodeClickColour = "#E34A33", textColour = "#3182bd", opacity = 0.6,
zoom = F)
参数解释如下:
|
Data |
数据源 |
|
Source |
默认为数据框的第一行,网络源变量 |
|
Target |
默认为数据框的第二行,网络源目标变量 |
|
height |
设置图像所占页面大小 |
|
width |
设置图像所占页面大小 |
|
linkDistance |
中间连线的长度,默认为50,数值越大,连线越长 |
|
charge |
点与点之间的吸引力,值越大,点与点之间距离越近,值越小,点与点之间距离越大 |
|
fontSize |
节点名称字体大小 |
|
fontFamily |
设置标签字体 |
|
linkColour |
连线颜色 |
|
nodeColour |
节点颜色 |
|
nodeClickColour |
点击后颜色 |
|
textColour |
字体颜色 |
|
opacity |
opacity=0时,透明度为0,看不到图像,最大值为1,超过1也默认为1 |
|
zoom |
逻辑值为true是可以缩放,false时无法缩放 |
我想这里有了上面这个参数表,大家肯定就会对simpleNetwork这个函数十分了解了。首先我们来一个最简单。
data<-read.table("network.txt",header = FALSE, sep = "")#读取数据
simpleNetwork(data)
结果如下:
现在我们就多加一些参数,然后看一下整体效果。
simpleNetwork(data,#数据
fontFamily="华文行楷",#字体设置
linkColour="#B23AEE",#连线颜色
nodeColour="#00CD66",#节点颜色
textColour="#0000FF",#文本颜色
charge = -550,#节点之间的引力
opacity=0.9,#透明度
zoom=TRUE #可缩放
结果如下:
至于其他参数大家可以自己去试试。,关注我的微信公众号《跟着菜鸟一起学R语言》,回复simpleNetwork,即可获取这次试用到的数据以及
RGB颜色查询对照表。
转载请注明原文链接:http://blog.csdn.net/wzgl__wh/article/details/53290514
R语言:绘制知识图谱的更多相关文章
- 用几分钟了解R语言入门知识
第一篇——用几分钟了解R语言入门知识 第二篇——用几分钟了解R语言入门知识(续) 关于数据分析学习笔记的计划(以及目录)
- R语言绘制相对性关系图
准备 第一步就是安装R语言环境以及RStudio 图绘制准备 首先安装库文件,敲入指令,回车 install.packages('corrplot') 然后安装excel导入的插件,点击右上角impo ...
- 一幅图解决R语言绘制图例的各种问题
一幅图解决R语言绘制图例的各种问题 用R语言画图的小伙伴们有木有这样的感受,"命令写的很完整,运行没有报错,可图例藏哪去了?""图画的很美,怎么总是图例不协调?" ...
- R语言绘制空间热力图
先上图 R语言的REmap包拥有非常强大的空间热力图以及空间迁移图功能,里面内置了国内外诸多城市坐标数据,使用起来方便快捷. 开始 首先安装相关包 install_packages("dev ...
- R语言绘制花瓣图flower plot
R语言中有很多现成的R包,可以绘制venn图,但是最多支持5组,当组别数大于5时,venn图即使能够画出来,看上去也非常复杂,不够直观: 在实际的数据分析中,组别大于5的情况还是经常遇到的,这是就可以 ...
- R语言绘制沈阳地铁线路图
##使用leaflet绘制地铁线路图,要求 ##(1)图中绘制地铁线路 library(dplyr) library(leaflet) library(data.table) stations< ...
- R语言绘制QQ图
无论是直方图还是经验分布图,要从比较上鉴别样本是否处近似于某种类型的分布是困难的 QQ图可以帮我们鉴别样本的分布是否近似于某种类型的分布 R语言,代码如下: > qqnorm(w);qqline ...
- R语言 入门知识--常用操作和例子
1 R的下载.安转 (转)R有很多的版本,支持目前主流的操作系统MAC.Linux和WINDOWS系列.因为我个人是在WINDOWS下用R的,所以在这里将只介绍WINDOWS下R的下载&安 ...
- R语言绘制直方图,
直方图: 核密度函数: 练习题目1: 绘制出15位同学体重的直方图和核密度估计图,并与正态分布的概率密度函数作对比 代码如下: > w <- c(75.0, 64.0, 47.4, 66. ...
随机推荐
- CentOS6.x环境通过yum命令在线安装或重装zookeeper-server
一.环境描述: 在CentOS6.x系统环境下,使用yum命令的形式安装zookeeper-server,由于我这里是重新安装zookeeper-server,所以在正式开始之前我需要将原本的zook ...
- jenkins导致磁盘占满问题
背景 今天登陆jenkins提示磁盘空间不足,且构建发生错误 排查问题 cd到jenkins 安装目录 执行df -h 发现root目录沾满 执行 du -ah --max-depth=1 发现是.j ...
- .NetCore技术研究-.NET Core迁移前的准备工作
前段时间迁移.NET Core做了大量的试水和评估,今天整理一下分享给大家.大致有以下几个部分: 1. .NET Core的由来 2. 为什么要迁移.NET Core 3. .NET Core3.X主 ...
- Java8新特性——接口默认方法
Java 8 新增了接口的默认方法. 简单说,默认方法就是接口可以有实现方法,而且不需要实现类去实现其方法. 我们只需在方法名前面加个default关键字即可实现默认方法. 为什么要有这个特性? 首先 ...
- .Net Core自动化部署系列(三):使用GitLab CI/CD 自动部署Api到Docker
之前写过使用Jenkins实现自动化部署,最近正好没事研究了下GitLab的自动化部署,顺便记录一下. 使用GitLab部署我们需要准备两件事,第一个起码你得有个GitLab,自己搭建或者使用官方的都 ...
- centos 7 常用yum源配置
使用centos系统最熟悉的莫过于yum命令,yum命令可以让安装软件变得那么简单,编译安装的依赖关系大部分都会解决. 工具/原料 centos 7 wget yum 方法/步骤 什么是y ...
- Future类型的连锁的运用
Future类型的连锁的运用: 洗脸 刷牙 吃早饭 看电视 出门 串行: import scala.concurrent.{Await, Future} import scala.util.{Fail ...
- 人生,还没困难到"非死不可"
最近半个月,美国著名的Facebook公司,出了好几件大事.第一件事,2019年9月19日,一名陈姓中国软件工程师在Facebook加州总部跳楼自杀.第二件事,2019年10月4日,一名软件工程师在座 ...
- 网页布局——grid弹性网格布局
网格布局(Grid)是最强大的 CSS 布局方案. Flexbox 是为一维布局设计的,而 Grid 是为二维布局设计. grid目前兼容性目前还可以,主流浏览器对它的支持力度很大,ie9,10宣布它 ...
- Python flask 构建可扩展的restful apl☝☝☝
Python flask 构建可扩展的restful apl☝☝☝ Flask-RESTful是flask的扩展,增加了对快速构建REST API的支持.Flask-RESTful通过最少的设置鼓励最 ...