文章详情

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

请输入下面的图形验证码

提交验证

短信预约提醒成功

Python如何绘制交通流折线图

2023-07-02 09:54

关注

这篇文章主要介绍了Python如何绘制交通流折线图的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Python如何绘制交通流折线图文章都会有所收获,下面我们一起来看看吧。

一、数据集下载

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

二、折线图绘制

1、解压npz文件

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

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

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

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

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

Python如何绘制交通流折线图

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

print(data['data'].shape)

其维度如下:

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

Python如何绘制交通流折线图

2、折线图绘制

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

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

Python如何绘制交通流折线图

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

import matplotlib.pyplot as plt

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

绘制的全部代码如下:

import numpy as npimport matplotlib.pyplot as pltdata = 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 = 0for 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()

绘制结果如下:

Python如何绘制交通流折线图

关于“Python如何绘制交通流折线图”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“Python如何绘制交通流折线图”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注编程网行业资讯频道。

阅读原文内容投诉

免责声明:

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

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

软考中级精品资料免费领

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

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

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

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

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

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

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