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

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


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

相关推荐
2301_7644413313 小时前
Python管理咨询数据可视化实战:收入分布与顾问利用率双轴对比图表生成脚本
开发语言·python·信息可视化
大数据魔法师16 小时前
基于Pandas和FineBI的昆明职位数据分析与可视化实现(五) - 基于随机森林算法预测职位分类
算法·pandas
kngines20 小时前
【字节跳动】数据挖掘面试题0012:数据分析、数据挖掘、数据建模的区别
数据挖掘·数据分析·面试题·数据建模
华科云商xiao徐20 小时前
Julia爬取数据能力及应用场景
爬虫·数据挖掘·数据分析
杨超越luckly21 小时前
HTML应用指南:利用GET请求获取全国山姆门店位置信息
信息可视化·数据分析·html·argis·门店
晨曦5432101 天前
数据可视化中常用的图表类型 及其适用场景,涵盖基础到高级,帮助你根据数据类型和展示目标选择合适的图表:
信息可视化
小白学大数据1 天前
R语言爬虫实战:如何爬取分页链接并批量保存
开发语言·爬虫·信息可视化·r语言
Chasing__Dreams2 天前
python--杂识--18.1--pandas数据插入sqlite并进行查询
python·sqlite·pandas
rui锐rui2 天前
商品销售数据分析实验
vue.js·数据挖掘·数据分析
金智维科技官方2 天前
利用AI Agent实现精准的数据分析
人工智能·数据挖掘·数据分析