返回

数据可视化视角下的B站弹幕解析

人工智能

前言

B站弹幕,作为B站的一大特色,一直以来都备受关注。这些五花八门的弹幕,不仅为视频增添了许多乐趣,也从侧面反映了观众对视频的看法。

数据来源与分析方法

本文所使用的数据来自B站官方提供的弹幕API。我们使用Python语言对数据进行分析,并使用pyecharts库进行可视化。

弹幕内容分析

弹幕词云图

首先,我们来看看弹幕中的高频词有哪些。

import jieba
import pyecharts.charts as charts

# 分词
texts = [" ".join(jieba.cut(text)) for text in texts]

# 生成词云图
wordcloud = (
    charts.WordCloud()
    .add("", texts, word_size_range=[20, 100])
    .set_global_opts(title_opts=opts.TitleOpts(title="弹幕词云图"))
)
wordcloud.render("弹幕词云图.html")

从词云图中可以看出,“哈哈”、“666”、“爱了”、“笑死”等词语出现在了高频词中。这些词语都代表了观众对视频的积极情绪,说明观众对视频的整体评价是正面的。

弹幕情感分析

除了对弹幕内容进行分词之外,我们还可以对弹幕进行情感分析。

import jieba
import numpy as np
import pyecharts.charts as charts

# 分词
texts = [" ".join(jieba.cut(text)) for text in texts]

# 情感分析
sentiments = [classify(text) for text in texts]

# 生成饼图
pie = (
    charts.Pie()
    .add("", sentiments, radius=[30, 75])
    .set_global_opts(title_opts=opts.TitleOpts(title="弹幕情感分析"))
)
pie.render("弹幕情感分析.html")

从饼图中可以看出,正面情感的弹幕占比最高,达到了60%以上。这说明观众对视频的整体评价是正面的。

弹幕发送者分析

弹幕发送者地域分布图

接下来,我们来看看弹幕发送者的地域分布情况。

import pyecharts.charts as charts

# 生成地图
map = (
    charts.Map()
    .add("弹幕发送者地域分布", data_pair, "china")
    .set_global_opts(title_opts=opts.TitleOpts(title="弹幕发送者地域分布"))
)
map.render("弹幕发送者地域分布图.html")

从地图中可以看出,弹幕发送者主要分布在沿海地区,其中广东、江苏、浙江、上海、北京等省份的弹幕发送者数量最多。这与这些省份的互联网普及率较高有关。

弹幕发送者性别分布图

我们还可以看看弹幕发送者的性别分布情况。

import pyecharts.charts as charts

# 生成饼图
pie = (
    charts.Pie()
    .add("", gender, radius=[30, 75])
    .set_global_opts(title_opts=opts.TitleOpts(title="弹幕发送者性别分布"))
)
pie.render("弹幕发送者性别分布图.html")

从饼图中可以看出,男性弹幕发送者占比更高,达到了65%以上。这与B站的男性用户居多的情况相符。

弹幕发送时间分析

弹幕发送时间分布图

最后,我们来看看弹幕发送时间分布情况。

import pyecharts.charts as charts

# 生成折线图
line = (
    charts.Line()
    .add("弹幕发送时间分布", time, number)
    .set_global_opts(title_opts=opts.TitleOpts(title="弹幕发送时间分布"))
)
line.render("弹幕发送时间分布图.html")

从折线图中可以看出,弹幕发送数量在晚上达到峰值,这与人们在晚上有更多空闲时间有关。另外,在一些特殊的时间点,如节假日、热门视频发布时,弹幕发送数量也会大幅增加。

结语

通过对B站弹幕数据的可视化分析,我们对B站弹幕这一独特的文化现象有了更深入的了解。这些数据不仅可以帮助我们更好地理解B站用户,还可以为B站的运营提供一些有价值的建议。