【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. 可视化项目源码+数据

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


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

相关推荐
終不似少年遊*2 小时前
pyecharts
python·信息可视化·数据分析·学习笔记·pyecharts·使用技巧
陆沙2 小时前
生物信息学导论-北大-RNA-Seq数据分析
数据分析·生物信息·生信
Watermelo6173 小时前
详解js柯里化原理及用法,探究柯里化在Redux Selector 的场景模拟、构建复杂的数据流管道、优化深度嵌套函数中的精妙应用
开发语言·前端·javascript·算法·数据挖掘·数据分析·ecmascript
Altair澳汰尔16 小时前
数据分析和AI丨知识图谱,AI革命中数据集成和模型构建的关键推动者
人工智能·算法·机器学习·数据分析·知识图谱
程序猿000001号16 小时前
探索数据可视化的利器:Matplotlib
信息可视化·matplotlib
qingyunliushuiyu1 天前
企业为何需要可视化数据分析系统
数据挖掘·数据分析·数据采集·数据可视化·数据分析系统
dundunmm1 天前
数据挖掘之认识数据
人工智能·机器学习·信息可视化·数据挖掘
chenchihwen1 天前
数据分析时的json to excel 转换的好用小工具
数据分析·json·excel
江南野栀子1 天前
数据可视化-1. 折线图
信息可视化·数据挖掘·数据分析
反方向的钟儿2 天前
非结构化数据分析与应用(Unstructured data analysis and applications)(pt3)图像数据分析1
人工智能·计算机视觉·数据分析