【NLP舆情分析】基于python微博舆情分析可视化系统(flask+pandas+echarts) 视频教程 - 微博文章数据可视化分析-文章评论量分析实现

大家好,我是java1234_小锋老师,最近写了一套【NLP舆情分析】基于python微博舆情分析可视化系统(flask+pandas+echarts)视频教程,持续更新中,计划月底更新完,感谢支持。今天讲解微博文章数据可视化分析-文章评论量分析实现

视频在线地址:

2026版【NLP舆情分析】基于python微博舆情分析可视化系统(flask+pandas+echarts+爬虫) 视频教程 (火爆连载更新中..)_哔哩哔哩_bilibili

课程简介:

本课程采用主流的Python技术栈实现,Mysql8数据库,Flask后端,Pandas数据分析,前端可视化图表采用echarts,以及requests库,snowNLP进行情感分析,词频统计,包括大量的数据统计及分析技巧。

实现了,用户登录,注册,爬取微博帖子和评论信息,进行了热词统计以及舆情分析,以及基于echarts实现了数据可视化,包括微博文章分析,微博IP分析,微博评论分析,微博舆情分析。最后也基于wordcloud库实现了词云图,包括微博内容词云图,微博评论词云图,微博评论用户词云图等功能。

微博文章数据可视化分析-文章评论量分析实现

后端我们首先根据类别去查询数据,然后初始化x轴数据,然后再遍历数据,统计y轴数据。

复制代码
@pb.route('/articleDataAnalysis')
def articleDataAnalysis():
    """
    文章数据分析
    :return:
    """
    arcTypeList = []
    df = pd.read_csv('./spider/arcType_data.csv')
    for value in df.values:
        arcTypeList.append(value[0])
    # 获取请求参数,如果没获取到,给个默认值 第一个列表数据。
    defaultArcType = request.args.get('arcType', default=arcTypeList[0])
    articleList = articleDao.getArticleByArcType(defaultArcType)
    xDzData = []  # 点赞x轴数据
    xPlData = []  # 评论x轴数据
    rangeNum = 1000
    for item in range(0, 10):
        xDzData.append(str(rangeNum * item) + '-' + str(rangeNum * (item + 1)))
        xPlData.append(str(rangeNum * item) + '-' + str(rangeNum * (item + 1)))
    xDzData.append('1万+')
    xPlData.append('1万+')
    yDzData = [0 for x in range(len(xDzData))]  # 点赞y轴数据
    yPlData = [0 for x in range(len(xPlData))]  # 评论y轴数据
    for article in articleList:
        for item in range(len(xDzData)):
            if int(article[4]) < rangeNum * (item + 1):
                yDzData[item] += 1
                break
            elif int(article[4]) > 10000:
                yDzData[len(xDzData) - 1] += 1
                break
        for item in range(len(xPlData)):
            if int(article[3]) < rangeNum * (item + 1):
                yPlData[item] += 1
                break
            elif int(article[3]) > 10000:
                yPlData[len(xPlData) - 1] += 1
                break
    return render_template('articleDataAnalysis.html',
                           arcTypeList=arcTypeList,
                           defaultArcType=defaultArcType,
                           xDzData=xDzData,
                           yDzData=yDzData,
                           xPlData=xPlData,
                           yPlData=yPlData)

前端图表用折线图:

复制代码
<script>
        var chartDom = document.getElementById('plMain');
        var myChart = echarts.init(chartDom);
        var option;
​
        option = {
​
            title: {
                text: '文章评论量区间占比'
            },
            xAxis: {
                type: 'category',
                data: {{ xPlData |tojson }}
            },
            yAxis: {
                type: 'value'
            },
            series: [
                {
                    data: {{ yPlData }},
                    type: 'line',
                    symbol: 'triangle',
                    symbolSize: 20,
                    lineStyle: {
                        color: '#5470C6',
                        width: 4,
                        type: 'dashed'
                    },
                    itemStyle: {
                        borderWidth: 3,
                        borderColor: '#EE6666',
                        color: 'yellow'
                    }
                }
            ]
        };
​
        option && myChart.setOption(option);
​
    </script>
相关推荐
Nontee11 分钟前
数据类型与包装类 — 一个新手学Java的数据类型笔记
java·笔记·python
千天夜35 分钟前
深入剖析 `Path(path).parent.mkdir(parents=True, exist_ok=True)` —— 优雅处理目录创建的终极方案
python
简~7681 小时前
python for in循环不能遍历整数怎么解决
python·大学生
aiqianji1 小时前
垂直专业的AI短篇小说写作软件有哪些特点?
人工智能·python
aqi002 小时前
15天学会AI应用开发(十三)上下文与RAG的阶段性总结
人工智能·python·大模型·ai编程·ai应用
程序员杰哥2 小时前
接口测试知识总结
自动化测试·软件测试·python·测试工具·职场和发展·测试用例·接口测试
大海变好AI2 小时前
专业的智能体算力架构高性价比品牌公司
python
江华森2 小时前
深入理解 Flask 实现原理
后端·python·flask
FriendshipT2 小时前
Ultralytics:解读SPPF模块
人工智能·pytorch·python·深度学习·目标检测