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

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


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

相关推荐
用户Taobaoapi201410 小时前
母婴用品社媒种草效果量化:淘宝详情API+私域转化追踪案例
大数据·数据挖掘·数据分析
大虫小呓13 小时前
Python 处理 Excel 数据 pandas 和 openpyxl 哪家强?
python·pandas
key0615 小时前
电子水母函数解析
数据分析
Brduino脑机接口技术答疑17 小时前
脑机新手指南(二十一)基于 Brainstorm 的 MEG/EEG 数据分析(上篇)
数据挖掘·数据分析
镜舟科技17 小时前
StarRocks × Tableau 连接器完整使用指南 | 高效数据分析从连接开始
starrocks·数据分析·数据可视化·tableau·连接器·交互式分析·mpp 数据库
好开心啊没烦恼18 小时前
Python 数据分析:DataFrame,生成,用字典创建 DataFrame ,键值对数量不一样怎么办?
开发语言·python·数据挖掘·数据分析
永洪科技1 天前
永洪科技荣获商业智能品牌影响力奖,全力打造”AI+决策”引擎
大数据·人工智能·科技·数据分析·数据可视化·bi
Triv20251 天前
ECU开发工具链1.10版:更强大的测量、校准与数据分析体验.
microsoft·数据分析·汽车电子开发·校准流程自动化·高速信号采集·测试台架集成·实时数据监控
好开心啊没烦恼1 天前
Python 数据分析:numpy,抽提,整数数组索引与基本索引扩展(元组传参)。听故事学知识点怎么这么容易?
开发语言·人工智能·python·数据挖掘·数据分析·numpy·pandas
云天徽上1 天前
【PaddleOCR】OCR常见关键信息抽取数据集,包含FUNSD、XFUND、WildReceipt等整理,持续更新中......
人工智能·计算机视觉·信息可视化·paddlepaddle·paddleocr·文本识别