R语言复杂网络分析各大电视台合播电视剧数量可视化

简介: R语言复杂网络分析各大电视台合播电视剧数量可视化

全文链接:http://tecdat.cn/?p=30961


我们围绕网络可视化分析技术进行一些咨询,帮助客户解决独特的业务问题点击文末“阅读原文”获取完整代码数据


为了分析电视台时间关系形态变化,我们获取了电视台合播电视剧数量数据:

1、黄色的方格内,数字大小表示为节点面积,即该电视台独播电视剧数量

2、白色的方格内,数字大小表示为连接强弱,可以为具体若干条连线、或连线的透明度、或连线的粗细,即这两个电视台合播电视剧数量

3、整体呈现,可以看到两年同样电视台的关系形态变化,输出一些网络分析的指标

2020年数据

`~$SS04TP$}WMX5N6BVT3L8.png

相关视频

[4HL184B}%J}TILCJ[9F751.png

读取文件

JGC}9`GAQ6LHQVD@IGEL9NA.png

library(igraph);
 
 
network= as.matrix(data)[,-1] 
network=apply(network,1,as.numeric)

给点的名称赋值

enames=colnames(data)[-1]
 events =network

将对角线的元素赋值为0

diag(events)=0

生成网络图格式

for(i in 1:n) {
    for(j in i:n) {
      s = paste(c(as.character(i), as.character(j),
                  as.character(monopartite[i,j]), "\r"), collapse=" ")
      write(s, file=f, append=TRUE, sep="")
    }
  }

读取网络图格式文件

e=read.graph("events.net",

对边进行删减,减去连接很小的边

if(is.null(E(graph)$weight)) stop("No weights for censoring the edges!")
  es = E(graph)[E(graph)$weight<floor | E(graph)$weight>ceiling]
  
  newgraph = graph - es
 
  newgraph = newgraph

给每个边的宽度进行赋值,用粗细表示

plot(newe, vertex.size=diag(network), vertex.shape="square", vert

M[PFAA_K28WU[K]F~7~FY}H.png


对图进行删减,删去连接少的边

newe = censor.edgeweight(e, floor=2); newe
## IGRAPH UNW- 25 91 --

给每个边的宽度进行赋值,用粗细表示

E(newe)$width =   E(newe)$weight

$L(%`@[$DAER}E_BI@H3}(2.png


点击标题查阅往期内容


T[RUVM1%8FNEF$[2}S5RZQC.png

【视频】复杂网络分析CNA简介与R语言对婚礼数据聚类社区检测和可视化|数据分享

左右滑动查看更多

01

{~5TA9S[MH[{Y@(MJS0J3WR.png

02

P[MS}QF]~{Q$U]WETLS0JJJ.png

03

9~J2R7DJ6RA21OBP3N}(%TU.png

04

6OBM6}FPF_@RELI]HP_PL89.png



2021年数据

head(data)
##             X1 湖南卫视 浙江卫视 江苏卫视 北京卫视 上海东方卫视 山东卫视
## 1     湖南卫视       24        1        0        0            0        0
## 2     浙江卫视        1        5        3        1            3        1
## 3     江苏卫视        0        3        7        1            2        1
## 4     北京卫视        0        1        1        4            5        1
## 5 上海东方卫视        0        3        2        5            5        3
## 6     山东卫视        0        1        1        1            3        3
##   安徽卫视 天津卫视 江西卫视 湖北卫视 深圳卫视 云南卫视 黑龙江卫视
## 1        0        0        0        0        0        0          0
## 2        2        1        0        0        2        0          0
## 3        1        2        0        1        0        0          0
## 4        1        0        0        0        1        0          0
## 5        3        3        0        0        0        1          0
## 6        2        3        3        2        0        2          2
##   广东卫视 重庆卫视 贵州卫视 四川卫视 辽宁卫视 河北卫视 河南卫视 东南卫视
## 1        0        0        0        0        0        0        0        1
## 2        0        0        2        0        0        0        0        0
## 3        0        1        0        0        0        1        0        0
## 4        1        0        0        1        0        1        1        0
## 5        0        1        0        0        0        0        0        0
## 6        0        0        1        0        3        1        1        0
##   吉林卫视 广西卫视 央视一套 央视八套
## 1        0        0        0        0
## 2        0        0        0        0
## 3        0        0        1        0
## 4        0        0        0        0
## 5        0        0        0        0
## 6        0        0        0        0

给点的名称赋值

enames=colnames(data)[-1]

将对角线的元素赋值为0

diag(events)=0

生成网络图格式

s = paste(c("*vertices ", as.character(n), "\r\n*edges\r"), collapse="")
  write(s, file=f, sep="")
  for(i in 1:n) {
    for(j in i:n) {
      s = paste(c(as.character(i), as.character(j),

读取网络图格式文件

e=read.graph("events.net", format="pajek")

对边进行删减,减去连接很小的边

if(is.null(E(graph)$weight)) stop("No weights for censoring the edges!")
  es = E(graph)[E(graph)$weight<floor | E(graph)$weight>ceiling]

给每个边的宽度进行赋值,用粗细表示

plot(newe, vertex.size=diag(network), vertex.shape="square",

CX6JB1}3PL]S]36YRPN~}B7.png

对图进行删减,删去连接少的边

newe = censor.edgeweight(e, floor=2); newe
## IGRAPH UNW- 25 27 -- 
## + attr: name (v/c), weight (e/n)

给每个边的宽度进行赋值,用粗细表示

E(newe)$width =   E(newe)$weight
 vertex.label.degree=pi/2, layout=layout.circle)
相关文章
|
1月前
|
机器学习/深度学习 数据可视化 计算机视觉
目标检测笔记(五):详细介绍并实现可视化深度学习中每层特征层的网络训练情况
这篇文章详细介绍了如何通过可视化深度学习中每层特征层来理解网络的内部运作,并使用ResNet系列网络作为例子,展示了如何在训练过程中加入代码来绘制和保存特征图。
56 1
目标检测笔记(五):详细介绍并实现可视化深度学习中每层特征层的网络训练情况
|
1月前
|
机器学习/深度学习 数据可视化 Windows
深度学习笔记(七):如何用Mxnet来将神经网络可视化
这篇文章介绍了如何使用Mxnet框架来实现神经网络的可视化,包括环境依赖的安装、具体的代码实现以及运行结果的展示。
50 0
|
3月前
|
数据可视化 数据挖掘 图形学
R语言基础可视化:使用ggplot2构建精美图形的探索
【8月更文挑战第29天】 `ggplot2`是R语言中一个非常强大的图形构建工具,它基于图形语法提供了一种灵活且直观的方式来创建各种统计图形。通过掌握`ggplot2`的基本用法和美化技巧,你可以轻松地将复杂的数据转化为直观易懂的图形,从而更好地理解和展示你的数据分析结果。希望本文能够为你探索`ggplot2`的世界提供一些帮助和启发。
|
3月前
|
数据可视化 数据挖掘 数据处理
R语言高级可视化技巧:使用Plotly与Shiny制作互动图表
【8月更文挑战第30天】通过使用`plotly`和`shiny`,我们可以轻松地创建高度互动的数据可视化图表。这不仅增强了图表的表现力,还提高了用户与数据的交互性,使得数据探索变得更加直观和高效。本文仅介绍了基本的使用方法,`plotly`和`shiny`还提供了更多高级功能和自定义选项,等待你去探索和发现。希望这篇文章能帮助你掌握使用`plotly`和`shiny`制作互动图表的技巧,并在你的数据分析和可视化工作中发挥更大的作用。
|
1月前
|
机器学习/深度学习 数据可视化 Linux
Seaborn可视化学习笔记(一):可视化神经网络权重分布情况
这篇文章是关于如何使用Seaborn库来可视化神经网络权重分布的教程,包括函数信息、测试代码和实际应用示例。
40 0
|
3月前
|
数据可视化 算法 C++
脑研究、脑网络分析、可视化的工具箱有哪些?
本文列举并简要介绍了用于脑研究、脑网络分析和可视化的多种工具箱,如Brain Connectivity Toolbox、bctpy、人类连接组项目等,为神经科学研究者提供了丰富的分析和可视化大脑网络的工具选择。
192 2
脑研究、脑网络分析、可视化的工具箱有哪些?
|
3月前
|
数据可视化
R语言可视化设计原则:打造吸引力十足的数据可视化
【8月更文挑战第30天】R语言可视化设计是一个综合性的过程,需要综合运用多个设计原则来创作出吸引力十足的作品。通过明确目标、选择合适的图表类型、合理运用色彩与视觉层次、明确标注与引导视线以及引入互动性与动态效果等原则的应用,你可以显著提升你的数据可视化作品的吸引力和实用性。希望本文能为你提供一些有益的启示和帮助。
|
3月前
|
人工智能 编解码 云计算
骄傲!全球一半人口看奥运,阿里云成功支撑史上最大规模电视网络转播
骄傲!全球一半人口看奥运,阿里云成功支撑史上最大规模电视网络转播
172 7
|
3月前
|
机器学习/深度学习 数据可视化 Python
如何可视化神经网络的神经元节点之间的连接?附有Python预处理代码
该博客展示了如何通过Python预处理神经网络权重矩阵并将其导出为表格,然后使用Chiplot网站来可视化神经网络的神经元节点之间的连接。
55 0
如何可视化神经网络的神经元节点之间的连接?附有Python预处理代码
|
3月前
|
数据采集 存储 数据可视化
基于Python 网络爬虫和可视化的房源信息的设计与实现
本文介绍了一个基于Python Scrapy框架和echart库的房源信息采集与可视化系统,该系统通过自动化爬虫提高房地产数据采集效率,并通过Flask服务器实现数据的Web可视化展示,旨在帮助房地产从业人员和政策制定者高效、直观地了解房源信息。

热门文章

最新文章