Python matplotlib以日期为x轴作图代码实例

yipeiwu_com6年前Python基础

这篇文章主要介绍了Python matplotlib以日期为x轴作图代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

效果图如下

代码如下

from datetime import datetime, date, timedelta
import matplotlib.pyplot as plt
import tushare as ts

plt.rcParams['font.sans-serif'] = ['SimHei'] #显示中文
plt.rcParams['axes.unicode_minus']=False #用来正常显示负号


def get_riqi():
  count = 30
  i = 0
  today = date.today() #今天日期
  riqi_list=[]
  riqi_list.append(str(today))
  while(i<=count):
    i+=1
    riqi_list.append(str((today + timedelta(days=-i))))
  return riqi_list


def count(Data):
  data_list = []
  sum_list = []
  for data in Data:
    sum = 0
    list = []
    for jiage in data:
      sum+=jiage
      list.append(jiage)
    sum_list.append(round(sum,2))
    data_list.append(list)
  return sum_list,data_list

def get_juedui(Data):
  sum = 0
  data = []
  for i in Data[::-1]:
    sum += i
    data.append(sum)
  return data
technology = {
  '海康威视':'002415',
  '中兴通讯':'000063',
  '科大讯飞':'002230',
  '立讯精密':'002475',
  '蓝思科技':'300433',
  '歌尔股份':'002241'
}
store = [technology]
technology = []
def get_data(store,riqi_list):
  count = 0
  for Stock_pool in store:
    count +=1
    for stock in Stock_pool.values():
      data = ts.get_hist_data(stock,start=riqi_list[-1])
      if (count == 1):
        technology.append(data.loc[:, 'p_change'])
riqi_list = get_riqi()
get_data(store,riqi_list)
riqi_list = technology[0].index
rili = []
for riqi in riqi_list:
  rili.append(riqi[5:])
sum2,data2 = count(technology)
riqi_list = [datetime.strptime(d, '%m-%d').date() for d in rili]
count = 0
for i in data2:
  count+=1
  data = get_juedui(i)
  if(count==1):
   plt.plot(rili[::-1], data,label = '海康威视' )
  if(count==2):
   plt.plot(rili[::-1], data,label = '中兴通讯' )
  if(count==3):
   plt.plot(rili[::-1], data,label = '科大讯飞' )
  if(count==4):
   plt.plot(rili[::-1], data,label = '立讯精密' )
  if (count == 5):
   plt.plot(rili[::-1], data, label='蓝思科技')
  if (count == 6):
   plt.plot(rili[::-1], data, label='歌尔股份')
plt.legend()
plt.show()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

详解Django解决ajax跨域访问问题

详解Django解决ajax跨域访问问题

这篇文章主要给大家介绍了关于Django跨域请求问题解决的相关资料,文中介绍的实现方法包括:使用django-cors-headers全局控制、使用JsonP,只能用于Get方法以及在v...

对python数据切割归并算法的实例讲解

当一个 .txt 文件的数据过于庞大,此时想要对数据进行排序就需要先将数据进行切割,然后通过归并排序,最终实现对整体数据的排序。要实现这个过程我们需要进行以下几步:获取总数据行数;根据行...

Python机器学习库scikit-learn安装与基本使用教程

本文实例讲述了Python机器学习库scikit-learn安装与基本使用。分享给大家供大家参考,具体如下: 引言 scikit-learn是Python的一个开源机器学习模块,它建立在...

Python生成验证码实例

Python生成验证码实例

本文实例展示了Python生成验证码的方法,具有很好的实用价值。分享给大家供大家参考。具体实现方法如下: 前台页面代码如下: <div> <img id="aut...

Python实现的读取电脑硬件信息功能示例

本文实例讲述了Python实现的读取电脑硬件信息功能。分享给大家供大家参考,具体如下: 上学那会,老师让我用java获取电脑硬件信息,CPU, 硬盘,MAC等,那个时候感觉搞了好久。。。...