文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Python绘制交通流折线图详情

2024-04-02 19:55

关注

一、数据集下载

加州高速公路PEMS数据集

这里绘制PEMS04中的交通流量数据。该数据集中包含旧金山2018年1月1日至2月28日的29条道路上307个探测器每五分钟收集的数据。

二、折线图绘制

1、解压npz文件

npz是一种numpy文件存储的压缩格式,可使用numpy进行读取。

allow_pickle=True用于防止numpy版本过高带来的错误。

data.files查看压缩文件下的所有文件。

import numpy as np
data = np.load(数据集存放地址, allow_pickle=True)
print(data.files)

可以看到压缩文件下只有data一个文件:

通过 data['data'] 即可对该数据集进行读取。我们也可以查看一下该数据的维度。

print(data['data'].shape)

其维度如下:

16992 = 59天×24小时×12(每五分钟统计一次流量数据),307为探测器数量,3为特征数。

2、折线图绘制

数据中包含的三个特征为(交通流量,平均速度,平均占用率),取出绘图需要的第一个特征(这里只绘制其中一个探测器的)。

flow = data['data'][:, 0, 0]

 导入matplotlib包,通过pyplot来绘制最简单的折线图。

import matplotlib.pyplot as plt

由于希望观测到工作日的流量变化,我们将横坐标替换为周一至周日。旧金山2018年1月1日为周一。

绘制的全部代码如下:

import numpy as np
import matplotlib.pyplot as plt
data = np.load(文件路径, allow_pickle=True)
flow = data['data'][:, 0, 0]
print(len(flow))
week = ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat']
x = []
for i in range(59):
    x.append(week[(i + 1) % 7])
y = []
sum = 0
for i in range(len(flow)):
    if i == 0 or (i + 1) % 288 != 0:
        sum += flow[i]
    else:
        y.append(sum)
        sum = 0
 
fig = plt.figure(figsize=(15, 5))   # 图片宽度设置的大一些
plt.title('traffic flow in San Francisco')
plt.xlabel('day')
plt.ylabel('flow')
plt.xticks(np.arange(59), x)
plt.plot(np.arange(59), y, linestyle='-')
fig.autofmt_xdate(rotation=45)  # x轴的刻度标签逆时针旋转45度
plt.show()

绘制结果如下:

文章所以大部分的KPI都会遵循“Mary's Peak”模式,比如说使用公共交通工具出行的情况、外卖点餐情况。从上图可以看出,这里的交通流量是遵循这一模式的。

到此这篇关于Python绘制交通流折线图详情的文章就介绍到这了,更多相关Python绘制折线图内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯