【51 Pandas+Pyecharts | 深圳市共享单车数据分析可视化】

文章目录

  • [🏳️‍🌈 1. 导入模块](#🏳️‍🌈 1. 导入模块)
  • [🏳️‍🌈 2. Pandas数据处理](#🏳️‍🌈 2. Pandas数据处理)
    • [2.1 读取数据](#2.1 读取数据)
    • [2.2 查看数据信息](#2.2 查看数据信息)
    • [2.3 处理起始时间、结束时间](#2.3 处理起始时间、结束时间)
    • [2.4 增加骑行时长区间列](#2.4 增加骑行时长区间列)
    • [2.5 增加骑行里程区间列](#2.5 增加骑行里程区间列)
  • [🏳️‍🌈 3. Pyecharts数据可视化](#🏳️‍🌈 3. Pyecharts数据可视化)
    • [3.1 各行政区单车骑行量](#3.1 各行政区单车骑行量)
    • [3.2 各行政区单车里程热图](#3.2 各行政区单车里程热图)
    • [3.3 起始时间分布](#3.3 起始时间分布)
    • [3.4 结束时间分布](#3.4 结束时间分布)
    • [3.5 骑行里程分布](#3.5 骑行里程分布)
    • [3.6 骑行里程区间占比](#3.6 骑行里程区间占比)
    • [3.7 骑行时长(s)](#3.7 骑行时长(s))
    • [3.8 骑行时长区间占比](#3.8 骑行时长区间占比)
  • [🏳️‍🌈 4. 可视化项目源码+数据](#🏳️‍🌈 4. 可视化项目源码+数据)

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

本期将利用Python分析「深圳市共享单车数据」 ,看看:各行政区单车骑行量、骑行里程、骑行时间分布等情况,希望对大家有所帮助,如有疑问或者需要改进的地方可以联系小编。

涉及到的库:

  • Pandas --- 数据处理
  • Pyecharts --- 数据可视化

🏳️‍🌈 1. 导入模块

python 复制代码
import pandas as pd
from pyecharts.charts import *
from pyecharts import options as opts
import warnings
warnings.filterwarnings('ignore')

🏳️‍🌈 2. Pandas数据处理

2.1 读取数据

python 复制代码
df1 = pd.read_excel('./共享单车数据.xlsx')

2.2 查看数据信息

python 复制代码
df.info()

2.3 处理起始时间、结束时间

python 复制代码
df1['骑行时长(s)'] = (df1['结束时间'] - df1['起始时间']).dt.total_seconds()

2.4 增加骑行时长区间列

python 复制代码
lables = [f'{i}-{i+5}分钟' for i in range(0, 60, 5)]+['60分钟以上']
df1['骑行时长区间'] = pd.cut(df1['骑行时长(s)'],bins=[i for i in range(0, 3601, 300)]+[10000],labels=lables)

2.5 增加骑行里程区间列

python 复制代码
distance_transfer=df1['骑行里程(m)'].map(lambda x: x / 1000)
df1['骑行里程区间'] = pd.cut(distance_transfer,bins=[0,1,2,3,4,5,10],labels=['0-1公里','1-2公里','2-3公里','3-4公里','4-5公里','5-6公里'])

🏳️‍🌈 3. Pyecharts数据可视化

3.1 各行政区单车骑行量

python 复制代码
def get_bar():
    bar = (
        Bar()
        .add_xaxis(x_data)
        .add_yaxis('', y_data,)
        .set_global_opts(
            title_opts=opts.TitleOpts(
                title='1-各行政区单车骑行量',
                subtitle=subtitle,
                pos_top='2%',
                pos_left='center',
            ),
            visualmap_opts=opts.VisualMapOpts(
                is_show=False,
                range_color=range_color,
            ),
        )
    )
    return bar
  • 福田区、龙华区、南山区的骑行订单量要远高于其他行政区
  • 光明区、盐田区骑行订单量最少

3.2 各行政区单车里程热图

python 复制代码
def get_map():
    map1 = (
        Map()
        .add('单车里程', data, '深圳')
        .set_global_opts(
            title_opts=opts.TitleOpts(
                title='2-各行政区单车里程热图',
                subtitle=subtitle,
                pos_top='2%',
                pos_left='center',
            ),
            visualmap_opts=opts.VisualMapOpts(
                range_color=range_color,
            ),
        )
    )
    return map1

3.3 起始时间分布

  • 骑行订单量在早8时和晚16时达到峰值,这两个时间正好是早晚高峰时间
    大部分的骑行订单集中在16时-20时

3.4 结束时间分布

3.5 骑行里程分布

python 复制代码
def get_scatter():
    scatter = (
        Scatter()
        .add_xaxis(x_data)
        .add_yaxis(
            '',
            y_data,
            label_opts=opts.LabelOpts(is_show=False)
        )
        .set_global_opts(
            title_opts=opts.TitleOpts(
                title='5-骑行里程分布',
                subtitle=subtitle,
                pos_top='2%',
                pos_left='center',
            ),
            visualmap_opts=opts.VisualMapOpts(
                is_show=False,
                range_color=range_color,
            )
        )
    )
    return scatter

3.6 骑行里程区间占比

  • 3公里以内的骑行订单占比达到80%,其中1-2公里区间最多,占比约34%

3.7 骑行时长(s)

3.8 骑行时长区间占比

python 复制代码
def get_pie():
    pie = (
        Pie()
        .add('',[list(z) for z in zip(x_data, y_data)])
        .set_global_opts(
            title_opts=opts.TitleOpts(
                title='8-骑行时长区间占比',
                subtitle=subtitle,
                pos_top='2%',
                pos_left='center',
            ),

            visualmap_opts=opts.VisualMapOpts(
                is_show=False,
                range_color=range_color,
            ),
        )
    )
    return pie
  • 15分钟以内的骑行订单占比达到78%,其中5-10分钟这个区间最多,占比约34%

🏳️‍🌈 4. 可视化项目源码+数据

点击跳转:【全部可视化项目源码+数据】


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

相关推荐
虎头金猫3 天前
4K 视频总卡在公网带宽?用 N1 + OpenList 把网盘播放链路重新理顺
运维·服务器·网络·python·容器·beautifulsoup·pandas
Asa121383 天前
R语言实现多组学因子分析(MOFA)
数据分析
漂着的圆木3 天前
Agent 功能参与度:Copilot 怎么算
sql·数据分析·agent·githubcopilot·度量
paopaokaka_luck3 天前
智慧社区综合服务小程序(人脸识别、AI问答、Echarts图形化分析)
前端·javascript·spring boot·spring·数据分析·echarts
Xiu Yan3 天前
Python 数据分析:Pandas DataFrame 零基础入门教程
python·jupyter·pycharm·numpy·pandas
Aloudata3 天前
语义层和SQL Copilot:一个降低写SQL门槛,一个统一业务逻辑
大数据·人工智能·数据分析·data agent·语义层
IT研究室3 天前
最新大数据毕业设计选题推荐-基于大数据的信用等级数据分析与可视化-大数据-Spark-Hadoop-Bigdata
大数据·信息可视化·数据分析·spark·课程设计
paopaokaka_luck3 天前
考研政治刷题小程序(AI推荐题目、ECharts数据分析、章节练习与专项训练、模拟考试、错题本与收藏夹、学习打卡与目标管理、题库和组卷维护)
前端·javascript·spring boot·spring·数据分析·echarts
2601_960620374 天前
2026校招市场策略岗项目准备指南:调研/竞品/活动/竞赛4类项目
数据分析
SelectDB4 天前
同等资源下 Apache Doris 4.2 vs StarRocks 4.1.1:1TB SSB 与 TPC-H 性能实测
大数据·数据库·数据分析