以『B站直播』为例,实现数据『实时』可视化分析

简介: 大家好,我是阿辰,上篇文章手把手教你实现『B站直播』弹幕实时分析(https://t.1yb.co/lKuy)教会大家如何实现『B站直播』弹幕实时分析

大家好,我是阿辰,上篇文章手把手教你实现『B站直播』弹幕实时分析(https://t.1yb.co/lKuy)教会大家如何实现『B站直播』弹幕实时分析

今天这篇文章教大家如何将这些数据进行可视化(同样也是实时可视化)

完整源码会给到大家,获取方式在下方。

先上效果图(点击底部阅读原文可直接看效果)

image.png

B站直播实时数据可视化

(视频已上传到网络:https://www.bilibili.com/video/BV1Xh411D7YN/

1

弹幕列表

由于数据已经在上篇文章介绍过了,本文就不浪费时间再去重复一遍,本文主要以可视化为主。(由于篇幅问题,这里就只展示核心代码)

    var roomid = $("#roomid").val();
    $.ajax({
      type: 'GET',
      data:{"roomid":roomid},
      url: "http://139.186.65.249:5000/analyze6",
      dataType: 'json',
      success: function(data){
      }
    });
}
setInterval("an6()","2000");//1000表示1秒

这里是设置2秒采集一次数据

获取弹幕数据

    function listIdF(){
         var roomid = $("#roomid").val();
         var listId = document.getElementById("listId");
        $.ajax({
          type: 'GET',
          data:{"roomid":roomid},
          url: "http://139.186.65.249:5000/alldata",
          dataType: 'json',
          success: function(data){
            document.getElementById("listDateId").innerHTML='时间段:'+data['d1'];
            var text ='';

            for(var i=0;i<data['d2'].length;i++){
                  tem_list = data['d2'][i].split("*");
                  text=text+'<li class="bg">'
                  +'<p class="fl"><b>'+tem_list[1]+'</b><br>'+tem_list[2]+'<br>'
                  +'</p>'
                  +'<p class="fr pt17">'+tem_list[0]+'</p>'
                  +'</li>';
            }
            listId.innerHTML=text;
          } 
        });
    }
    setInterval("listIdF()","2000");//1000表示1秒

image.png

image.png

2

不同时间点评论数分析

  function an1(){
    var roomid = $("#roomid").val();
    $.ajax({
      type: 'GET',
      data:{"roomid":roomid},
      url: "http://139.186.65.249:5000/analyze1",
      dataType: 'json',
      success: function(data){
        document.getElementById("d1").innerHTML='时间:'+data['d1'];
       //html部分js
    }
  })

}

image.png

3

情感判断分析

var roomid = $("#roomid").val();
$.ajax({
  type: 'GET',
  data:{"roomid":roomid},
  url: "http://139.186.65.249:5000/analyze2",
  dataType: 'json',
  success: function(data){

    document.getElementById("d2").innerHTML='时间:'+data['d1'];
       //html部分js
    }
  })

}
setInterval("an2()","7000");//1000表示1秒

7秒请求一次数据,并通过JS渲染到html

image.png

4

高频词统计分析

  var roomid = $("#roomid").val();
  $.ajax({
    type: 'GET',
    data:{"roomid":roomid},
    url: "http://139.186.65.249:5000/analyze3",
    dataType: 'json',
    success: function(data){

    document.getElementById("d2").innerHTML='时间:'+data['d1'];
       //html部分js
    }
  })

}
setInterval("an2()","7000");//1000表示1秒

7秒请求一次数据,并通过JS渲染到html

image.png

5

关键字抽取

 var roomid = $("#roomid").val();
 var listId = document.getElementById("listId");
$.ajax({
  type: 'GET',
  data:{"roomid":roomid},
  url: "http://139.186.65.249:5000/analyze4",
  dataType: 'json',
  success: function(data){

    document.getElementById("d4").innerHTML='时间:'+data['d1'];
       //html部分js
    }
  })

}
setInterval("an2()","7000");//1000表示1秒

7秒请求一次数据,并通过JS渲染到html

image.png

6

UP主数据

  var roomid = $("#roomid").val();
  $.ajax({
    type: 'GET',
    data:{"roomid":roomid},
    url: "http://139.186.65.249:5000/analyze5",
    dataType: 'json',
    success: function(data){

      document.getElementById("d51").innerHTML=''+data['d51'];
      document.getElementById("d52").innerHTML=''+data['d52'];
      document.getElementById("d53").innerHTML=''+data['d53'];
      document.getElementById("d54").innerHTML=''+data['d54'];
      document.getElementById("uid").innerHTML='UP主数据(uid:'+data['uid']+")";
    }
  });

}
setInterval("an5()","7000");//1000表示1秒

7秒请求一次数据,并通过JS渲染到html

image.png

image.png

7

实时弹幕词云统计

    var roomid = $("#roomid").val();
    $.ajax({
      type: 'GET',
      data:{"roomid":roomid},
      url: "http://139.186.65.249:5000/find",
      dataType: 'json',
      success: function(data){
         if (data['picpath'].length>5){
            $(".amiddboxttop_map").css("background-image","url(../static/roomidimg/"+data['picpath']+")");
         }
      }
    });
}
setInterval("find()","3000");//1000表示1秒

3秒请求一次数据,并通过JS渲染到html

image.png

8

总结

本文主要是讲解了如何将实时数据进行可视化。

因为代码量太多,不方面放全部代码,所以需要的完整代码的朋友可以在下方获取,如果对代码有疑惑的,欢迎加群一起交流(后台回复:加群)

如果大家对本文代码源码感兴趣,扫码关注『Python研究者』后台回复:实时可视化 ,获取完整代码!

教你如何学Python,专注于Python入门与进阶、爬虫、数据分析挖掘、数据可视化。分享Python相关的技术文章、工具资源、视频教程、学习资料。

------------- 推荐阅读 -------------

高质量推荐

可视化分析中国500强排行榜数据

.实战讲解四种不同爬虫解析数据方法,必须掌握!

一键查询明星个人信息,并以知识图谱可视化展示

爬取展示『王者荣耀』2020年-2021年2月收入流水线

qrcode_for_gh_196c765451c2_258.jpg

标签: Python

相关文章
|
7月前
|
存储 关系型数据库 MySQL
用户案例合集 | 物联网平台的时序数据处理难点与优化实践
本文汇总了四个典型的物联网平台的实践经验,把它们曾面临的数据难题以及解决思路分享给大家。
107 0
|
6天前
|
存储 缓存 API
阿里巴巴中国站1688商品详情API实时数据获取:从零基础到精通的全程指南
随着电子商务的快速发展,实时数据获取在商业决策中扮演着越来越重要的角色。阿里巴巴中国站作为国内领先的B2B平台,提供了丰富的API接口供开发者使用。本文将重点介绍如何通过阿里巴巴中国站的1688商品详情API实现实时数据获取,并给出相应的代码示例。
|
10月前
|
数据可视化 数据挖掘 API
漏刻有时可视化数据分析专向大屏训练通升级说明
漏刻有时可视化数据分析专向大屏训练通升级说明
114 0
|
6月前
|
搜索推荐 数据挖掘 BI
78 网站点击流数据分析案例(网站流量分析过程)
78 网站点击流数据分析案例(网站流量分析过程)
95 0
|
6月前
|
数据采集 分布式计算 数据挖掘
80 网站点击流数据分析案例(数据采集功能)
80 网站点击流数据分析案例(数据采集功能)
28 0
|
8月前
|
关系型数据库 分布式数据库 数据库
沉浸式学习PostgreSQL|PolarDB 8: 电商|短视频|新闻|内容推荐业务(根据用户行为推荐相似内容)、监控预测报警系统(基于相似指标预判告警)、音视图文多媒体相似搜索、人脸|指纹识别|比对 - 向量搜索应用
1、在电商业务中, 用户浏览商品的行为会构成一组用户在某个时间段的特征, 这个特征可以用向量来表达(多维浮点数组), 同时商品、店铺也可以用向量来表达它的特征. 那么为了提升用户的浏览体验(快速找到用户想要购买的商品), 可以根据用户向量在商品和店铺向量中进行相似度匹配搜索. 按相似度来推荐商品和店铺给用户. 2、在短视频业务中, 用户浏览视频的行为, 构成了这个用户在某个时间段的兴趣特征, 这个特征可以用向量来表达(多维浮点数组), 同时短视频也可以用向量来表达它的特征. 那么为了提升用户的观感体验(推荐他想看的视频), 可以在短视频向量中进行与用户特征向量的相似度搜索.
239 0
|
10月前
|
监控 BI 定位技术
直播程序源码开发建设:洞察全局,数据统计与分析功能
数据统计与分析功能不管是对直播程序源码平台的主播或运营者都会有极大的帮助,是了解观众需求、优化用户体验成为直播平台发展的关键功能,这也是开发搭建直播程序源码平台的必备功能之一。
直播程序源码开发建设:洞察全局,数据统计与分析功能
|
SQL 消息中间件 存储
实时标签开发——从零开始搭建实时用户画像(五)
实时标签开发——从零开始搭建实时用户画像(五)
1133 1
实时标签开发——从零开始搭建实时用户画像(五)
|
监控 开发者
网站流量日志分析背景介绍—如何进行网站分析-转化分析(漏斗模型)|学习笔记
快速学习网站流量日志分析背景介绍—如何进行网站分析-转化分析(漏斗模型)
133 0
网站流量日志分析背景介绍—如何进行网站分析-转化分析(漏斗模型)|学习笔记
|
机器学习/深度学习 SQL 算法
基于阿里云平台进行游戏数据分析(二)
在本项目中,我们将基于阿里云平台进行游戏数据分析。本文是这个项目介绍的第二部分,主要介绍绘制散点图,建立回归模型,检测变量之间的线性关系。
314 0
基于阿里云平台进行游戏数据分析(二)