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. ...
随机推荐
- JVM 调优 - jhat
Java命令学习系列(五)——jhat 2016-01-21 分类:Java 阅读(8708) 评论(3) 阿里大牛珍藏架构资料,点击链接免费获取 jhat(Java Heap Analysis To ...
- Spring Boot 简介与入门(2.1.6版)
Spring Boot 2.1.6 版 与时俱进是每一个程序员都应该有的意识,当一个Java程序员在当代遍布的时候,你就该意识到能多学点什么.可观的是后端的框架是稳定的,它们能够维持更久的 ...
- c# 9.0 特性提案 简化空参数验证代码
简而言之就是将已存在的特性null参数验证,使用一个简单的语义标注进一步简化. 对于如下这段代码 // Before void Insert(string s) { if (s is null) { ...
- freemarker常用属性
1.th:action 定义后台控制器的路径,类似<form>标签的action属性. 示例如下. <form id="login" th:action=&quo ...
- Mysql的表级锁和行级锁
表级锁 MySQL表级锁分为读锁和写锁. 读锁 用法:LOCK TABLE table_name [ AS alias_name ] READ 释放锁使用UNLOCK tables.可以为表使用别名, ...
- 阿里云DLA工具 查询tablestore数据
OTS和DLA元信息映射逻辑 字段的映射关系 OTS DLA INTEGER(8bytes) bigint(8bytes) STRING varchar BINARY varbinary DOUBLE ...
- drf 框架
一. drf简介 drf框架,全程: django-rest framework , rest是插件名字,django插件的名字叫rest,framework是框架的意思 二. 接口 在平时生活 ...
- SpringCloud系列-利用Feign实现声明式服务调用
上一篇文章<手把手带你利用Ribbon实现客户端的负载均衡>介绍了消费者通过Ribbon调用服务实现负载均衡的过程,里面所需要的参数需要在请求的URL中进行拼接,但是参数太多会导致拼接字符 ...
- uni-app h5端跳转到底部导航栏的时候使用方法uni.switchTab跳转刷新页面更新数据
h5端的uni-app项目 需求:uni-app h5端跳转到底部导航栏的时候使用方法uni.switchTab跳转刷新页面更新数据 百度的方法如下: uni.switchTab({ url: '/p ...
- Vue-懒加载(判断元素是否在可视区域内)
上公式: 元素距离顶部高度(elOffsetTop) >= dom滚动高度(docScrollTop) 并且元素距离顶部高度(elOffsetTop) < (dom滚动高度 + 视窗高度) ...