豆瓣电影Top250的可视化分析

本文涉及的产品
实时数仓Hologres,5000CU*H 100GB 3个月
智能开放搜索 OpenSearch行业算法版,1GB 20LCU 1个月
实时计算 Flink 版,1000CU*H 3个月
简介: 本文旨在实现豆瓣电影TOP250的可视化,通过确定柱状图、折线图和饼图等图表设计,展示评价人数最多、年份分布及类型占比。模拟数据用于演示,例如评价最多的电影、年份最多的电影数量及每年高分电影趋势。完整代码可下载,包含ECharts实现的四种图表。

本文要完成的目的,实现豆瓣电影TOP250的可视化

思路

讲解思路,采用倒推的方式,

  • 首先确定可视化图表,也就是最终的效果。
  • 这样就能确定需要那些基础数据
  • 根据需要的数据进行按需爬取存储。

豆瓣电影Top250的可视化分析

本篇文章完成前两步。可视化图表设计 和 模拟数据。

可视化设计

image-20240624140308517

柱状图:

【豆瓣电影TOP250】评价人数最多的电影top10

  • 统计对象:电影评分TOP600
  • 统计目的:豆瓣电影TOP250
  • X轴数据:电影评价人数
  • Y轴数据:电影名

【豆瓣电影TOP250】年份最多的电影数量top10

  • 统计对象:电影评分TOP600的电影
  • 统计目的:年份最多的电影数量top10
  • X轴数据:电影数量值
  • Y轴数据:电影年份值

折线图

【豆瓣电影TOP250】每年高分电影产量趋势

  • 统计对象:豆瓣电影TOP250
  • 统计目的:每年高分电影产量趋势
  • X轴数据: 电影年份
  • Y轴数据: 当年电影数量

饼图

豆瓣电影TOP250各类型电影占比

  • 统计对象:豆瓣电影TOP250
  • 统计目的:展示不同类型电影在评分TOP600中的比例
  • 图表数据:各类型电影的数量

评价人数最多的电影top10

模拟数据

    // 假设这是获取到的豆瓣电影TOP250评价人数最多的电影TOP10的数据
    var movieData = [
        // 电影名, 评价人数
        ["肖申克的救赎", 1000000],
        ["霸王别姬", 950000],
        ["阿甘正传", 900000],
        ["这个杀手不太冷", Math.floor(Math.random() * 800000) + 100000], // 随机生成100000到900000的评价人数
        ["千与千寻", Math.floor(Math.random() * 800000) + 100000],
        ["泰坦尼克号", Math.floor(Math.random() * 800000) + 100000],
        ["盗梦空间", Math.floor(Math.random() * 800000) + 100000],
        ["星际穿越", Math.floor(Math.random() * 800000) + 100000],
        ["楚门的世界", Math.floor(Math.random() * 800000) + 100000],
        ["三傻大闹宝莱坞", Math.floor(Math.random() * 800000) + 100000],
        ["忠犬八公的故事", Math.floor(Math.random() * 800000) + 100000]
    ];
    // 确保评价人数是降序排列
    movieData.sort((a, b) => b[1] - a[1]);
    // 只保留评价人数最多的前10部电影
    movieData = movieData.slice(0, 10);

image-20240624140549065

年份最多的电影数量top10

模拟数据

     // 模拟豆瓣电影TOP250的电影年份和对应的数量
    var simulatedData = [];
    for (let i = 1990; i <= 2020; i++) {
   
    // 假设我们只考虑1990年到2020年的电影
        let count = Math.floor(Math.random() * 50) + 1; // 随机生成1到50部电影的数量
        simulatedData.push([i, count]);
    }

    // 按照电影数量进行降序排序,获取年份最多的电影数量top10
    simulatedData.sort((a, b) => a[1] - b[1]);
    simulatedData = simulatedData.slice(0, 10);

    // 提取X轴和Y轴的数据
    var xAxisData = simulatedData.map(item => item[1]);
    var yAxisData = simulatedData.map(item => item[0]);

image-20240624140735448

每年高分电影产量趋势

模拟数据

    // 模拟豆瓣电影TOP250每年高分电影的产量
    var yearData = []; // 存储年份
    var productionData = []; // 存储每年高分电影的产量

    for (let i = 1990; i <= 2020; i++) {
   
   
        // 随机生成1到50部电影的数量,模拟每年高分电影的产量
        let count = Math.floor(Math.random() * 50) + 1;
        yearData.push(i); // 添加年份到X轴数据
        productionData.push(count); // 添加电影产量到Y轴数据
    }

image-20240624140923496

各类型电影占比

模拟数据

// 定义电影类型列表
    var movieGenres = [
        "剧情", "喜剧", "动作", "爱情", "科幻", "动画", "悬疑", "惊悚", "恐怖",
        "纪录片", "短片", "情色", "音乐", "歌舞", "家庭", "儿童", "传记", "历史",
        "战争", "犯罪", "西部", "奇幻", "冒险", "灾难", "武侠", "古装", "运动",
        "黑色电影"
    ];

    // 根据类型列表生成模拟数据
    var pieChartData = movieGenres.map(function(genre) {
   
   
        // 随机生成每种类型的电影数量,这里假设数量在50到500之间
        var value = Math.floor(Math.random() * 451) + 50;
        return {
   
   
            value: value,
            name: genre
        };
    });

image-20240624140916700

完整代码

点我下载:echarts实现豆瓣Top250可视化【四个图表-完美融合UI搭配设计和模拟数据】.rar

目录
相关文章
|
数据采集 数据可视化 算法
【优秀python案例】基于Python的豆瓣电影TOP250爬虫与可视化设计与实现
本文设计并实现了一个基于Python的豆瓣电影TOP250爬虫与可视化系统,通过获取电影评分、评论并应用词云和饼图等可视化技术,为用户提供了电影评价的直观展示和深入分析。
2378 3
【优秀python案例】基于Python的豆瓣电影TOP250爬虫与可视化设计与实现
|
机器学习/深度学习 自然语言处理 算法
文本分析-使用jieba库进行中文分词和去除停用词(附案例实战)
文本分析-使用jieba库进行中文分词和去除停用词(附案例实战)
7750 0
|
11月前
|
搜索推荐 数据挖掘 API
淘宝商品API接口的对接及收益
淘宝商品API接口是淘宝开放平台提供的数据服务,支持商品搜索、详情、评价等功能,帮助开发者快速获取商品数据,提升用户体验,降低运营成本,增强市场竞争力,并支持数据分析和业务决策。对接流程包括注册账号、获取API密钥、阅读文档、编写请求代码、发送请求、解析数据、错误处理和日志记录等步骤。通过实际案例,如价格比较网站、库存管理工具、个性化推荐系统等,展示了API接口的应用价值。
381 5
|
自然语言处理 IDE 开发工具
通义灵码编程智能体上线,支持Qwen3模型
通义灵码最全使用指南,一键收藏。
128486 31
通义灵码编程智能体上线,支持Qwen3模型
|
缓存 负载均衡 前端开发
优化Web应用性能的十种策略
在当今的数字化时代,Web应用的性能直接影响用户体验和业务成效。本文深入探讨了优化Web应用性能的十种策略,从前端的资源优化到后端的架构改进,涵盖了缓存机制、异步加载、数据库优化等关键技术手段。这些策略不仅能提升响应速度,还能显著减少服务器负担和带宽消耗,为开发者提供了一系列切实可行的解决方案。
|
Java Maven
idea中maven项目pom文件Could not acquire lock(s)
idea中maven项目pom文件Could not acquire lock(s)
7865 2
|
12月前
|
Java 关系型数据库 MySQL
mysql5.7 jdbc驱动
遵循上述步骤,即可在Java项目中高效地集成MySQL 5.7 JDBC驱动,实现数据库的访问与管理。
2174 1
|
数据采集 存储 JavaScript
(2024)豆瓣电影TOP250爬虫详细讲解和代码
这是一个关于如何用Python爬取2024年豆瓣电影Top250的详细教程。教程涵盖了生成分页URL列表和解析页面以获取电影信息的函数。`getAllPageUrl()` 生成前10页的链接,而`getMoiveListByUrl()` 使用PyQuery解析HTML,提取电影标题、封面、评价数和评分。代码示例展示了测试这些函数的方法,输出包括电影详情的字典列表。
949 3
|
自动驾驶 安全 物联网
2G、3G、4G与5G技术:主要区别详解
2G、3G、4G与5G技术:主要区别详解
6356 14
|
数据采集 存储 JavaScript
(2024)豆瓣电影详情内容爬虫详解和源码
这是一个Python爬虫程序,用于抓取豆瓣电影详情页面如`https://movie.douban.com/subject/1291560/`的数据。它首先发送GET请求,使用PyQuery解析DOM,然后根据`&lt;br&gt;`标签分割HTML内容,提取电影信息如导演、演员、类型等,并将中文键转换为英文键存储在字典中。完整代码包括请求、解析、数据处理和测试部分。当运行时,会打印出电影详情,如导演、演员列表、类型、时长等。
355 1
 (2024)豆瓣电影详情内容爬虫详解和源码