本文主要是介绍【python 散点图】美观画时间序列散点图,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
经常遇到时间序列的数据,用散点图可以直观的查看数据的分布情况。matplotlib模块的pyplot有画散点图的函数,但是该函数要求x轴是数字类型。pandas的plot函数里,散点图类型’scatter’也要求数字型的,用时间类型的会报错。
最终摸索出画散点图的简单办法。可以使用pyplot的plot_date()画散点图。
# -*- coding: utf-8 -*-"""speed1219.csv data file format:dtime,speed2017-12-19 10:33:30,8032017-12-19 10:35:29,10082017-12-19 10:36:04,10162017-12-19 10:37:32,9842017-12-19 10:38:06,1008"""import pandas as pdimport matplotlib.pyplot as pltfrom matplotlib.dates import AutoDateLocator, DateFormatter df = pd.read_csv('d:/speed1219.csv', parse_dates=['dtime'])plt.plot_date(df.dtime, df.speed, fmt='b.')ax = plt.gca()ax.xaxis.set_major_formatter(DateFormatter('%Y-%m-%d %H:%M')) #设置时间显示格式ax.xaxis.set_major_locator(AutoDateLocator(maxticks=24)) #设置时间间隔 plt.xticks(rotation=90, ha='center')label = ['speedpoint']plt.legend(label, loc='upper right')plt.grid()ax.set_title(u'传输速度', fontproperties='SimHei',fontsize=14) ax.set_xlabel('dtime')ax.set_ylabel('Speed(KB/s)')plt.show()
这篇关于【python 散点图】美观画时间序列散点图的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!