# !/usr/bin/env python3
# -*- coding: utf-8 -*-
#Author:Nicolas TU
#Date:NOV.16,2019 20:57:07
# @Env: python 3.6
from pylab import mpl
import matplotlib.pyplot as plt
mpl.rcParams['font.sans-serif'] = ['SimHei'] # 指定默认字体
mpl.rcParams['axes.unicode_minus']
import pandas as pd
import requests
import time
time_start=time.time()#计算时间开始
headers = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.120 Safari/537.36'}
#生成出生当年所有日期
def dateRange(a,b):
fmt = '%Y-%m-%d'
bgn = int(time.mktime(time.strptime(a,fmt)))
end = int(time.mktime(time.strptime(b,fmt)))
list_date = [time.strftime(fmt,time.localtime(i)) for i in range(bgn,end+1,3600*24)]
return list_date
def get_json(url):
try:
response = requests.get(url,headers=headers)
if response.status_code == 200:
json_text=response.json()
return json_text
except Exception:
print('此页有问题!')
return None
def get_comments(url):
doc = get_json(url)
dic = {}
dic['pig_out'] = doc['pigprice']
dic['pig_in'] = doc['pig_in']
dic['pig_local'] = doc['pig_local']
dic['maize'] = doc['maizeprice']
dic['bean'] = doc['bean']
a = '-'.join(doc['time'][3])
b = time.strftime('%Y-%m-%d',time.localtime(time.time()))
#print(dateRange(a,b))
dic['time'] = dateRange(a,b)
return pd.DataFrame(dic)
data =get_comments('http://zhujia.zhuwang.cc/index/api/chartData?areaId=-1&aa=1571997555296')
print(data)
#作图
plt.figure(figsize=(10,10), dpi=80)
#plt.figure(1)
ax1 = plt.subplot(311)
plt.plot(data['time'],data['pig_out'], color="r",linestyle = "-")
plt.xticks([])
plt.annotate(data['pig_in'][365], xy=(data['time'][365], 40), xytext=(data['time'][250], 35), arrowprops=dict(facecolor='blue', shrink=0.1, width=0.5))
plt.xlabel("生猪(内三元) 元/公斤")
plt.title(u'2019年猪肉价格与猪饲料价格Python大数据分析,@Nicolas TU ')
ax2 = plt.subplot(312)
plt.plot(data['time'],data['maize'],color="y",linestyle = "-")
plt.xticks([])
plt.xlabel("玉米(15%水分) 元/吨")
ax3 = plt.subplot(313)
plt.plot(data['time'],data['bean'],color="g",linestyle = "-")
plt.xlabel("豆粕(43%蛋白) 元/吨")
plt.xticks(data['time'][2::121], rotation=0)
plt.show()#图像显示
time_end=time.time()#计算时间结束
print('-'*50)
print('python3.6程序运行',time_end-time_start,'秒。')
print('-'*50)
2019年猪肉价格与猪饲料价格Python大数据分析.zip
版权申诉
5星 · 超过95%的资源 183 浏览量
2021-12-07
20:38:04
上传
评论
收藏 54KB ZIP 举报
Like_Bamboo
- 粉丝: 808
- 资源: 3万+
最新资源
- python-leetcode面试题解之第157题用Read4读取N个字符-题解.zip
- python-leetcode面试题解之第156题上下翻转二叉树-题解.zip
- python-leetcode面试题解之第155题最小栈-题解.zip
- python-leetcode面试题解之第153题寻找旋转排序数组中的最小值-题解.zip
- python-leetcode面试题解之第152题乘积最大子数组-题解.zip
- python-leetcode面试题解之第151题反转字符串中的单词-题解.zip
- python-leetcode面试题解之第150题逆波兰表达式求值-题解.zip
- python-leetcode面试题解之第149题直线上最多的点数-题解.zip
- python-leetcode面试题解之第148题排序链表-题解.zip
- python-leetcode面试题解之第147题对链表进行插入排序-题解.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈