登录
首页精彩阅读Uber和Lyft出行数据可视化:旧金山每天超过20万人次
Uber和Lyft出行数据可视化:旧金山每天超过20万人次
2017-06-15
收藏

Uber和Lyft出行数据可视化:旧金山每天超过20万人次

我叫 Billy Charlton,Because LLC 公司的创始人,西雅图的普吉特区域理事会的前数据总监。我擅长交通规划领域,因为这对我们的城市和日常生活有直接的影响。

最近,旧金山交通管理局发布了 Uber 和 Lyft 的城市出行数据,这是史无前例的。加在一起,这两家公司的每天都有超过 20 万次的行程,而这仅仅是在城市范围内。

当我们正在与交通管理局一起合作时,他们询问我们正在搭建的平台是否也可以用来分析这个数据集。以下是我们的成果。

“TNCs Today”数据探索

在公共部门,提供拼车服务的被称为交通网络公司(网约车公司),简称“TNCs”。

可以直接访问 TNCs Today 页面:

http://tncstoday.sfcta.org/

看点

• 你可以选择一周内某天的行程,也可以查看全天行程或者特定时间内的行程。

• 点击地图上的任意一处就会弹出一个图表,显示该区域的每日上下客总数。还可以切换每周不同的日子,比较周一和周五的数据区别。

• 可以选择 2D 或者 3D 视图: 3D 显示了一周内不同日子城市的行程模式,而 2D 视图则更容易点击和查看各个地点。

星期五的行程最多。可以清楚地看到上午和下午高峰期的通勤“驼峰”。也可以看到很多晚上和深夜的行程,这在一周内其他日子是不常见的。

数据对网约车司机的上下客数据进行估计。研究人员分析了:每个司机在“已完成行程”和“现在可以接单”状态下的纬度/经度坐标和时间戳。“这可能与乘客的出发点和目的地不完全相同,但就道路交通和拥堵的影响而言,这能够有效的掌握司机开始和结束行程的时间与地点。

注意:

该数据集表示在 2016 年秋季数周数据的平均值。只包含旧金山市内的行程,因此这可能是 Uber 和 Lyft 在市区内总行程数的较低估值。

发现

• 星期日和星期一的行程最少,周二,周三和周四的行程日益增多,周五和周六的行程数达到最高。

随着每周时间的推移,Ubers 和 Lyfts 的行程数随之增加

• 工作日存在可预测的通勤模式,上午和下午高峰期均存在峰值。星期五和星期六比其他日子有更多的夜晚出行,延长到深夜。

• 无论何时,Uber 和 Lyft 出行在城市的东北地区更为频繁,基本上在塞萨尔·查韦斯北部和迪维萨罗东部。

• 着名的旅游景点如渔人码头,金门大桥和 GG 公园博物馆的行程很多,并且每天的分布与非常不同。

• 周末行程的高峰在星期五和星期六晚上:卡斯特罗,特派团/瓦伦西亚,北海滩,球场等地点。

周五晚有很多往返于卡斯特罗的行程。

还有一些奇怪的现象。有些地区一天存在行程高峰。而有些地区尽管没有什么特殊的,但是存在大量的行程。

有些能够解释;有些可能只是数据集中的噪音。

这意味着什么?

旧金山交通管理局指出:目前还没有针对这些数据的相关政策。

利用公共部门的开源软件

我们已经确定了一个完全开源的技术堆栈,作为该机构即将进行的数据可视化工作的基础。这些不仅仅是“免费工具”——这些组件的组合产生了更更灵活、功能更强大的产品。

后端

该数据库是 PostgreSQL 的 PostGIS 空间扩展。对于这个项目,只提供块级摘要(称为“流量分析区”),因此我们没有处理任何类型的“大数据”。任何数据库都有足够的存储空间,但是 PostGIS 扩展允许我们做一些很酷的事情,比如地理编码、空间缓冲区、路径和偏移量。PostGIS 很棒。

前端需要以某种方式与数据库联系;由于其简单的 RESTful API 和容易配置性,我们选择了PostgREST。PostgREST 作为 NGINX 的反向代理,它为指定 URL 端点提供安全性和灵活性。

前端

我们利用尽可能多的预先构建的库来实现这个功能,并快速运行。此外,旧金山需要一个现代化的 web 工具,这对员工来说更容易维护。在试验了一些替代方案后,我们决定:

• GitHub Pages 用于服务静态站点的页面。所有代码都已经在 GitHub 上,所以继续使用它们进行托管是有道理的。静态站点意味着没有服务器维护或被黑客入侵。如果我可以从现在起建立静态网站,我会的。不过,在自定义域上获取SSL支持非常困难。

• Vue.js 用于模板和反应元素,学习和使用这个框架很有趣。

• Mapbox GL JS 用于制作交互式 2D / 3D 地图。我本来想要坚持使用完全开源的 Leaflet,但我们非常喜欢 Mapbox 中的 3D 功能。

• Morris.js 用于制作互动图表。

• Semantic UI 用于制作按键。

• Modern ES2015 JavaScript,通过 webpack 和 babel,支持广泛的浏览器(但不适用所有的浏览器:我们使用 IE11)。

最终,整个过程不到 1000 行 JavaScript 代码!

我写的所有代码都在 GitHub 上。

https://github.com/sfcta/tncstoday

ref:

https://hackernoon.com/visualizing-uber-and-lyft-usage-in-san-francisco-928208b1978a

数据分析咨询请扫描二维码

客服在线
立即咨询