Pyecharts | 《白蛇2:青蛇劫起》20000+数据分析可视化

文章目录

  • ️‍ 1. 导入模块
  • ️‍ 2. Pandas数据处理
    • 2.1 读取数据
    • 2.2 数据大小
    • 2.3 查看索引、数据类型和内存信息
  • ️‍ 3. Pyecharts数据可视化
    • 3.1 评分等级分布
    • 3.2 每日评论量
    • 3.3 每小时评论量
    • 3.4 一周各天评论量
    • 3.5 日历图
    • 3.6 角色热度
    • 3.7 观众地域分布
    • 3.8 影评词云
  • ️‍ 12. 在线运行地址
  • 推荐阅读

大家好,我是 【Python当打之年(点击跳转)】

本期为大家带来 20000+条影评数据 ,分析一下《白蛇2:青蛇劫起》 这部动漫的观影情况,看看大家对国产动漫都有哪些看法,希望对小伙伴们有所帮助。

涉及到的库:

  • Pandas — 数据处理
  • Pyecharts — 数据可视化
  • jieba — 分词
  • collections — 数据统计

可视化部分:

  • Line — 折线图
  • Bar — 柱状图
  • Pie — 饼状图
  • Calendar— 日历图
  • WordCloud — 词云图
  • Geo — 地图

《白蛇2:青蛇劫起》剧情简介:
主要讲述南宋末年,小白为救许仙水漫金山,终被法海压在雷峰塔下。小青则意外被法海打入诡异的修罗城幻境。几次危机中小青被神秘蒙面少年所救,小青带着出去救出小白的执念历经劫难与成长,同蒙面少年一起寻找离开办法的故事。
Pyecharts | 《白蛇2:青蛇劫起》20000+数据分析可视化_第1张图片

感兴趣的小伙伴也可以看一下第一部:《白蛇:缘起》,两部都不错的。好了,进入正题。

️‍ 1. 导入模块

import jieba
import stylecloud
import pandas as pd
from PIL import Image
from collections import Counter
from pyecharts.charts import Geo
from pyecharts.charts import Bar
from pyecharts.charts import Line
from pyecharts.charts import Pie
from pyecharts.charts import Calendar
from pyecharts.charts import WordCloud
from pyecharts import options as opts
from pyecharts.commons.utils import JsCode
from pyecharts.globals import ThemeType,SymbolType,ChartType

️‍ 2. Pandas数据处理

2.1 读取数据

df = pd.read_excel("白蛇2.xlsx")
df.head()

Pyecharts | 《白蛇2:青蛇劫起》20000+数据分析可视化_第2张图片

2.2 数据大小

df.shape
(20584, 6)

一共有20584条影评数据,数据时间分布2021-8-01至2021-08-31。

2.3 查看索引、数据类型和内存信息

df.info()

Pyecharts | 《白蛇2:青蛇劫起》20000+数据分析可视化_第3张图片

用户名存在一条缺失,其他各列数据完整,本次分析未用到该数据,所有暂不处理。

️‍ 3. Pyecharts数据可视化

3.1 评分等级分布

color_js = """new echarts.graphic.LinearGradient(0, 0, 1, 0,
    [{offset: 0, color: '#009ad6'}, {offset: 1, color: '#ed1941'}], false)"""

df_star = df.groupby('评分')['评论'].count()
df_star = df_star.sort_values(ascending=True)
x_data = [str(i) for i in list(df_star.index)]
y_data = df_star.values.tolist()
b1 = (
    Bar()
    .add_xaxis(x_data)
    .add_yaxis('',y_data,itemstyle_opts=opts.ItemStyleOpts(color=JsCode(color_js)))
    .reversal_axis()
    .set_series_opts(label_opts=opts.LabelOpts(position='right')) 
    .set_global_opts(
        yaxis_opts=opts.AxisOpts(name='评分等级'),
        xaxis_opts=opts.AxisOpts(name='人/次'),
        title_opts=opts.TitleOpts(title='评分等级分布',pos_left='45%',pos_top="5%"),
        legend_opts=opts.LegendOpts(type_="scroll", pos_left="85%",pos_top="28%",orient="vertical")
    )
)

df_star = df.groupby('评分')['评论'].count()
x_data = [str(i) for i in list(df_star.index)]
y_data = df_star.values.tolist()
p1 = (
    Pie(init_opts=opts.InitOpts(width='800px', height='600px'))
    .add(
 '',
    [list(z) for z in zip(x_data, y_data)],
    radius=['10%', '30%'],
 center=['65%', '60%'],
    label_opts=opts.LabelOpts(is_show=True),
    ) 
    .set_colors(["blue", "green", "#800000", "red", "#000000", "orange", "purple", "red", "#000000", "orange", "purple"])
    .set_series_opts(label_opts=opts.LabelOpts(formatter='评分{b}: {c} \n ({d}%)'),position="outside") 
)
b1.overlap(p1)

Pyecharts | 《白蛇2:青蛇劫起》20000+数据分析可视化_第4张图片

可以看到,5.0的评分占比达到了56%,超过了半数观众打出了五星好评,四星以上好评更是达到了85%之多,看来大家对这部动漫还是比较认可的。

3.2 每日评论量

2021.08.01-2021.08.31 每天评论量分布:

df_day = df.groupby(df['评论时间'].dt.day)['评论'].count()
day_x_data = [str(i) for i in list(df_day.index)]
day_y_data = df_day.values.tolist()
 
line1 = (
    Line(init_opts=opts.InitOpts(bg_color=JsCode(color_js)))
    .add_xaxis(xaxis_data=day_x_data)
    .add_yaxis(
        series_name="",
        y_axis=day_y_data,
        is_smooth=True,
        is_symbol_show=True,
        symbol="circle",
        symbol_size=6,
        linestyle_opts=opts.LineStyleOpts(color="#fff"),
        label_opts=opts.LabelOpts(is_show=True, position="top", color="white"),
        itemstyle_opts=opts.ItemStyleOpts(
            color="red", border_color="#fff", border_width=3
        ),
        tooltip_opts=opts.TooltipOpts(is_show=False),
        areastyle_opts=opts.AreaStyleOpts(color=JsCode(area_color_js), opacity=1),
    )
    .set_global_opts(
        title_opts=opts.TitleOpts(
            title="八月每日评论量",
            pos_top="5%",
            pos_left="center",
            title_textstyle_opts=opts.TextStyleOpts(color="#fff", font_size=16),
        ),
        xaxis_opts=opts.AxisOpts(
            type_="category",
            boundary_gap=True,
            axislabel_opts=opts.LabelOpts(margin=30, color="#ffffff63"),
            axisline_opts=opts.AxisLineOpts(is_show=False),
            axistick_opts=opts.AxisTickOpts(
                is_show=True,
                length=25,
                linestyle_opts=opts.LineStyleOpts(color="#ffffff1f"),
            ),
            splitline_opts=opts.SplitLineOpts(
                is_show=True, linestyle_opts=opts.LineStyleOpts(color="#ffffff1f")
            ),
        ),
        yaxis_opts=opts.AxisOpts(
            type_="value",
            position="left",
            axislabel_opts=opts.LabelOpts(margin=20, color="#ffffff63"),
            axisline_opts=opts.AxisLineOpts(
                linestyle_opts=opts.LineStyleOpts(width=2, color="#fff")
            ),
            axistick_opts=opts.AxisTickOpts(
                is_show=True,
                length=15,
                linestyle_opts=opts.LineStyleOpts(color="#ffffff1f"),
            ),
            splitline_opts=opts.SplitLineOpts(
                is_show=True, linestyle_opts=opts.LineStyleOpts(color="#ffffff1f")
            ),
        ),
        legend_opts=opts.LegendOpts(is_show=False),
    )
)

Pyecharts | 《白蛇2:青蛇劫起》20000+数据分析可视化_第5张图片

每天评论量在8月1日达到峰值(数据不包含7月份),随着时间的推移评论数量逐渐减少,这也符合一般电影观影规律。

3.3 每小时评论量

统计的是2021.08.01-2021.08.31这31天每小时天评论量总和(如果感兴趣可以单独查看某一天24小时影评数量分布,按日期筛选即可):
Pyecharts | 《白蛇2:青蛇劫起》20000+数据分析可视化_第6张图片

从小时分布来看,大家一般选择在下午到晚上评论的比较多,尤其是在17:00以后,大家在工作时段还都是比较敬业的。第二次评论峰值在22:00,这个时间段是熬夜青年比较活跃的时段,小伙伴们的作息时间都比较靠后。

3.4 一周各天评论量

统计的是2021.08.01-2021.08.31这31天每周各天评论量的总和:
Pyecharts | 《白蛇2:青蛇劫起》20000+数据分析可视化_第7张图片

从一周各天数据分布来看,每周一和每周天是大家评论的活跃时段,很有意思,一周的开始和一周的结束,在休闲中开始,在休闲中结束。

3.5 日历图

日历图可以更直观的看到一个月内每天和每星期的评论量:
Pyecharts | 《白蛇2:青蛇劫起》20000+数据分析可视化_第8张图片

3.6 角色热度

主要人物:小白、小青、许仙、法海、司马、孙姐、牛头帮主、蒙面男子、宝青坊主、书生等:

Pyecharts | 《白蛇2:青蛇劫起》20000+数据分析可视化_第9张图片

3.7 观众地域分布

Pyecharts | 《白蛇2:青蛇劫起》20000+数据分析可视化_第10张图片

从地域分布图来看,观众主要分布在北京、天津、上海、重庆、四川、广东、云南等地。

3.8 影评词云

Pyecharts | 《白蛇2:青蛇劫起》20000+数据分析可视化_第11张图片

️‍ 12. 在线运行地址

在线运行地址(含全部代码):
https://www.heywhale.com/mw/project/6132e5898608050017004a5f


文章首发:微信公众号 Python当打之年,Python编程技巧推送,希望大家可以喜欢。

以上就是本期为大家整理的全部内容了,赶快练习起来吧,原创不易,喜欢的朋友可以点赞、收藏也可以分享注明出处)让更多人知道。

推荐阅读

  • 【Matplotlib | 世界足球俱乐部排名可视化】
  • 【Pandas+Pyecharts | 2022年世界500强数据分析可视化】
  • 【Pandas+Pyecharts | 快手APP大学生用户数据分析可视化】
  • 【Pandas+Pyecharts | 上海市餐饮数据分析可视化】
  • 【Pandas+Pyecharts | 山东省高考考生数据分析可视化】
  • 【Pandas+Pyecharts | 40000+汽车之家数据分析可视化】
  • 【Pandas+Pyecharts | 20000+天猫订单数据可视化】
  • 【Pandas+Pyecharts | 广州市已成交房源信息数据可视化】
  • 【Pandas+Pyecharts | 考研信息数据可视化】
  • 【Pandas+Pyecharts | 某平台招聘信息数据可视化】
  • 【Pandas+Pyecharts | 医院药品销售数据可视化】
  • 【Pyecharts | 比特币每日价格动态可视化】
  • 【可视化 | Python中秋月饼销量分析,这些口味才是yyds!】
  • 【Pyecharts | 《白蛇2:青蛇劫起》20000+数据分析可视化】
  • 【Pyecharts | 历年全国各地民政局登记数据分析+可视化】
  • 【Pandas+Pyecharts | 全国热门旅游景点数据分析+可视化】
  • 【Pandas+Pyecharts | 2020东京奥运会奖牌数据可视化】
  • 【Pandas常用基础操作指令汇总 】
  • 【pandas + pyecharts | ADX游戏广告投放渠道综合分析】
  • 【Schedule + Pyecharts | 时间序列图(动态轮播图)】
  • 【Pandas+Pyecharts | 北京某平台二手房数据分析+可视化】
  • 【Pandas+Pyecharts | 2021中国大学综合排名分析+可视化】
  • 【爬虫 | Python爬取豆瓣电影Top250 + 数据可视化】
  • 【技巧 | Python创建自己的高匿代理IP池】

你可能感兴趣的:(Pyecharts系列,Python可视化系列,数据分析,echarts,数据挖掘)