您好,登錄后才能下訂單哦!
如何用Python幫朋友做了張豬肉數據分析圖,針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
事情的經過是這樣的:
我開開心心的去一家燒餅店吃飯
抬頭一看,二師兄又漲價了
嘆了口氣,再這么下去真的要吃不起夾肉的燒餅了
點了兩個燒餅一碗餛飩
快吃完的時候,收到了朋友阿東的微信
阿東是我初中同學,好些日子沒聯系了
眼瞅著他快聊到區塊鏈了,雖然這事不靠譜,但還是答應了阿東幫他做圖。
我趕緊吃完最后一口,回公司,決定不午睡了。
開工!
阿東想要這樣的圖:
折線圖嘛,先獲取數據吧
正好圖片中顯示了數據來源:“中國養豬網”
打開官網,找到并跳轉到豬價網址 http://zhujia.zhuwang.cc/
F12,Network查看異步請求XHR,成功找到價格接口。
新標簽頁打開,在線解析Json數據。
部分爬蟲代碼(完整代碼見文末下載地址):
def get_comments(url): doc = get_json(url) dic = {} dic['pigprice'] = doc['pigprice'] dic['pig_in'] = doc['pig_in'] dic['pig_local'] = doc['pig_local'] dic['maizeprice'] = 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')
運行結果:
成功獲取最近一年的各種價格√
下面開始給阿東做折線圖:
生豬價格的話選第一個外三元就好了,
使用 matplotlib 輕松可以做出折線圖。
from pylab import mpl import matplotlib.pyplot as plt mpl.rcParams['font.sans-serif'] = ['SimHei'] # 指定默認字體 mpl.rcParams['axes.unicode_minus'] plt.figure(figsize=(8,4), dpi=80) plt.plot(data['time'],data['pigprice'], color="r",linestyle = "-") plt.xticks(data['time'][2::121], rotation=0) plt.xlabel("生豬(外三元) 元/公斤")
感覺還差點東西,可以標注一下最新一天的價格
另外既然已經獲取了玉米和豆粕的價格,就一起做了吧~
利用 plt.subplot 可以繪制多個子圖
from pylab import mpl import matplotlib.pyplot as plt mpl.rcParams['font.sans-serif'] = ['SimHei'] # 指定默認字體 mpl.rcParams['axes.unicode_minus'] plt.figure(figsize=(8,10), dpi=80) plt.figure(1) ax1 = plt.subplot(311) plt.plot(data['time'],data['pigprice'], color="r",linestyle = "-") plt.xticks([]) plt.annotate(data['pigprice'][365], xy=(data['time'][365], 40), xytext=(data['time'][270], 35), arrowprops=dict(facecolor='black', shrink=0.1, width=0.5)) plt.xlabel("生豬(外三元) 元/公斤") ax2 = plt.subplot(312) plt.plot(data['time'],data['maizeprice'],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)
完工,
發給阿東。
卻得到這樣的回復
原來在他心里是這么定義朋友的啊。
可以,
這很東哥,
這很兄弟。
關于如何用Python幫朋友做了張豬肉數據分析圖問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。