众所周知,使用python绘图特别简单,容易上手。本篇通过一个简单的demo展示:如何使用matplotlib包 绘制时间序列图。

一、读取数据及处理

  • 通过pandas读取CSV文件,keep_default_na参数将空值数据改为空字符串
  • 查看原数据信息,原数据分为3day, 时间粒度3min
  • 通过pandas date_range函数生成时间序列时间数据,指定freq='180s'
import pandas as pd
import matplotlib.pyplot as plt
import matplotlib.dates as mdates
%matplotlib inline plt.rcParams['font.sans-serif'] = ['SimHei']  # 显示中文(windows)
plt.rcParams['axes.unicode_minus'] = False   # 用来正常显示负号df = pd.read_csv('traffic_analysis_macro.csv', keep_default_na=False)  # 无数据当做空字符串处理
# df.drop(['region_id'], axis=1, inplace=True)# 查看原始数据集情况
print('shape:', df.shape)
print('describle:', df.describe())
print('data head:', df.head())# 该数据集,分为3天,时间粒度3min;
# 首先按天切分数据
df_0912 = df[:480]
df_0915 = df[480:960]
df_0916 = df[960:]# 生成时间序列:X轴刻度数据
table = pd.DataFrame([i for i in range(480)],columns=['value'],index=pd.date_range('00:00:00', '23:57:00', freq='180s'))

二、绘制图形

# 图片大小设置
fig = plt.figure(figsize=(15,9), dpi=100)
ax = fig.add_subplot(111)# X轴时间刻度格式 & 刻度显示
ax.xaxis.set_major_formatter(mdates.DateFormatter('%H:%M'))
plt.xticks(pd.date_range(table.index[0],table.index[-1],freq='H'), rotation=45)# 绘图
ax.plot(table.index,df_0912['avg_speed'],color='r', label='9月12日')
ax.plot(table.index,df_0915['avg_speed'],color='y', label='9月15日')
ax.plot(table.index,df_0916['avg_speed'],color='g', label='9月16日')# 辅助线
sup_line = [35 for i in range(480)]
ax.plot(table.index, sup_line, color='black', linestyle='--', linewidth='1', label='辅助线')plt.xlabel('time_point', fontsize=14)    # X轴标签
plt.ylabel("Speed", fontsize=16)         # Y轴标签
ax.legend()                              # 图例
plt.title("车速时序图", fontsize=25, color='black', pad=20)
plt.gcf().autofmt_xdate()# 隐藏-上&右边线
# ax.spines['right'].set_color('none')
# ax.spines['top'].set_color('none')# plt.savefig('speed.png')
plt.show()

三、效果图如下

spyder中绘图无法显示负号_Python绘图--时序图相关推荐

  1. spyder中绘图无法显示负号_matlibplot+seaborn绘图风格交叉使用

    matlibplot+seaborn绘图风格交叉使用 遇到问题:想要图一的图案,但是想要seaborn中默认的风格绘制 图一 一开始的想法是seaborn既然升级版matlibplot,应该支持直接修 ...

  2. spyder中绘图无法显示负号_[转载]Matlab常用函数

    计算样本的百份位数 Matlab的常用内部数学函数 指数函数 exp(x) 以e为底数 对数函数 log(x) 自然对数,即以e为底数的对数 log10(x) 常用对数,即以10为底数的对数 log2 ...

  3. python中plot的图像类型_Python绘图问题:Matplotlib中指定图片大小和像素

    主要作用为指定图片像素: matplotlib.rcParams['figure.figsize']#图片像素 matplotlib.rcParams['savefig.dpi']#分辨率 plt.s ...

  4. python中plot不能显示标签_python 2: 解决python中的plot函数的图例legend不能显示中文问题...

    问题: 图像标题.横纵坐标轴的标签都能显示中文名字,但是图例就是不能显示中文,怎么解决呢? 解决: plt.figure() plt.title(u'训练性能', fontproperties=fon ...

  5. python中print不显示结果_Python中的print()函数

    本文为中国大学MOOC<Python语言程序设计>课程学习笔记,课程主讲:嵩天老师,练习平台:Python123,参考教材:<Python语言程序设计基础> print()函数 ...

  6. win10系统中pdf不显示缩略图及预览图

    试试这个,我的取消了复选框反而出现了预览图:https://helpx.adobe.com/cn/acrobat/using/enable-pdf-thumbnail-preview-windows- ...

  7. win7 计算机属性 灰,win7系统文件夹属性中隐藏选项显示灰色不可改的解决方法...

    很多小伙伴都遇到过win7系统文件夹属性中隐藏选项显示灰色不可改的困惑吧,一些朋友看过网上零散的win7系统文件夹属性中隐藏选项显示灰色不可改的处理方法,并没有完完全全明白win7系统文件夹属性中隐藏 ...

  8. matplotlib柱状图上方显示数据_Python数据分析matplotlib可视化之绘图!

    Matplotlib是一个基于python的2D画图库,能够用python脚本方便的画出折线图,直方图,功率谱图,散点图等常用图表,而且语法简单. Python中通过matplotlib模块的pypl ...

  9. python画图显示不了中文_Python使用matplotlib绘图无法显示中文问题的解决方法

    本文实例讲述了Python使用matplotlib绘图无法显示中文问题的解决方法.分享给大家供大家参考,具体如下: 在python中,默认情况下是无法显示中文的,如下代码: import matplo ...

最新文章

  1. 设计模式-观察者模式
  2. 巴斯腾和巴乔谁强一些
  3. 主动找智能钥匙 PKE取代RKE是大势所趋
  4. POJ - 1041 John's trip(欧拉回路)
  5. 22行代码AC——L1-023 输出GPLT(~解题报告~)
  6. 深度学习之基于DCGAN实现手写数字生成
  7. CocoaPods加载第三方库
  8. vsftp服务日志不能显示中文临时解决(crontab五秒更新)
  9. 无限浏览器代理服务器,老司机浏览器无限版
  10. 一键清理windows系统垃圾|临时文件bat脚本
  11. 像《王者荣耀》一样红过
  12. nc361t支持的服务器,使用5760/3850 WLC的外部RADIUS服务器EAP身份验证配置示例
  13. Ta,两年拿下了10亿美金
  14. 计算机毕业设计JAVA家庭饮用水监测系统mybatis+源码+调试部署+系统+数据库+lw
  15. java中复数_Java中的复数
  16. 令克软件再推OpenAPI与MAS系统服务,强大引擎赋能券商多元化发展
  17. 生最困难的不是努力,而是做出正确的抉择
  18. javapdf转换成html,java pdf转换为html代码
  19. 在Mac机上用命令idevice_id -l来查udid和ideviceinstaller -l来查看bundleId出现错误
  20. 单链表删除元素之狸猫换太子法

热门文章

  1. asp.net下的“Eval()、XPath() 和 Bind() 这类数据绑定方法只能在数据绑定控件的上下文中使用。”错误的一个可能的成因...
  2. 什么是COM组件(ZT)
  3. ASP+XML+JavaScript实现动态无限级联动菜单
  4. [ES6] 细化ES6之 -- 字符串的扩展
  5. Vuejs 动态绑定属性
  6. HTML-超链接锚点笔记
  7. 机器学习算法(2)——AdaBoost算法
  8. android xutil 数据库,Android XUtils3框架的基本使用方法(二)
  9. imagereader java_java中ImageReader和BufferedImage获取图片尺寸实例
  10. PTA9、计算利率 (10 分)