亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Python數(shù)據(jù)分析之繪制ppi-cpi剪刀差圖形

 更新時(shí)間:2022年05月06日 10:12:32   作者:? 斜月?  ?  
這篇文章主要介紹了Python數(shù)據(jù)分析之繪制ppi-cpi剪刀差圖形,ppi-cp剪刀差是通過(guò)這個(gè)指標(biāo)可以了解當(dāng)前的經(jīng)濟(jì)運(yùn)行狀況,下文更多詳細(xì)內(nèi)容介紹需要的小伙伴可以參考一下

前言

ppi-cpi 剪刀差大家可能都聽(tīng)說(shuō)過(guò),通過(guò)這個(gè)指標(biāo)可以了解當(dāng)前的經(jīng)濟(jì)運(yùn)行狀況,小編為了學(xué)習(xí) python 的圖形繪制,通過(guò)爬蟲(chóng)的方式獲取到 ppi 和 cpi 的歷史數(shù)據(jù),然后通過(guò) matplotlib 繪圖工具將 ppi 數(shù)據(jù)和 cpi 數(shù)據(jù)同框展示,最后通過(guò)顏色填充來(lái)表示其中的差額部分。對(duì)于新手來(lái)講,會(huì)學(xué)習(xí)到 python 的基礎(chǔ)知識(shí)、爬蟲(chóng)以及圖形繪制的知識(shí)。

ppi 和 cpi 數(shù)據(jù)獲取

既然是數(shù)據(jù)獲取,就需要找一個(gè)權(quán)威的網(wǎng)站獲取 cpi 和 ppi 的數(shù)據(jù),這里小編采用東方財(cái)富網(wǎng)的數(shù)據(jù),這里直接給出頁(yè)面的訪問(wèn)地址:

# cpi數(shù)據(jù)訪問(wèn)地址
https://data.eastmoney.com/cjsj/cpi.html

cpi 的數(shù)據(jù)來(lái)源如下圖所示,這里只獲取月份數(shù)據(jù)和全國(guó)列中的同比增長(zhǎng)即可。

ppi 數(shù)據(jù)如下所示,這里和 cpi 的數(shù)據(jù)獲取內(nèi)容類似,只獲取月份數(shù)據(jù)和當(dāng)月同比增長(zhǎng)即可。

既然知道了數(shù)據(jù)來(lái)源,那么怎么獲取數(shù)據(jù)呢,一看到這個(gè)表格,是不是要復(fù)制頁(yè)面進(jìn) excel 在進(jìn)行解析,no,這樣的話不符合程序員的氣質(zhì),我注意到了表格下方有分頁(yè),那么肯定是有通過(guò) ajax 和后臺(tái)進(jìn)行通信的,通過(guò)觀察小編發(fā)現(xiàn)了這兩個(gè)接口,可以獲取我們想要的數(shù)據(jù):

# ppi 數(shù)據(jù)
https://datainterface.eastmoney.com/EM_DataCenter/JS.aspx?type=GJZB&sty=ZGZB&p=1&ps=10&mkt=22
# cpi 數(shù)據(jù)
https://datainterface.eastmoney.com/EM_DataCenter/JS.aspx?type=GJZB&sty=ZGZB&p=1&ps=10&mkt=19

aspx 后綴的接口看來(lái)還是 .net 呀,這里簡(jiǎn)單分析一下,p=1&ps=10 分頁(yè)參數(shù)就不說(shuō)了,大家都知道的,重要的是 mkt 參數(shù),表示了數(shù)據(jù)的分類。其他的參數(shù)也不需要關(guān)心含義,保留就好。

使用 python 抓取數(shù)據(jù),這里采用 requests 來(lái)獲取數(shù)據(jù):

def query_data_list(url):
    """
    獲取數(shù)據(jù)
    """
    # 去除 https 校驗(yàn)提醒信息 verify=False 忽略對(duì)證書(shū)的驗(yàn)證
    requests.packages.urllib3.disable_warnings()
    data = requests.get(url, verify=False).text
    # 通過(guò)瀏覽器控制臺(tái)查看數(shù)據(jù)返回的結(jié)構(gòu),進(jìn)行轉(zhuǎn)換后存入一個(gè) list
    data = data.replace("([\"", "").replace("\"])", "")
    arr_list = data.split("\",\"")
    # 臨時(shí)打印結(jié)果
    print(arr_list)
    return arr_list

最終獲取到的數(shù)據(jù)如下圖所示:

ppi-cpi 圖形繪制

在繪制圖形之前,需要先對(duì)數(shù)據(jù)進(jìn)行處理:

  • 1 數(shù)據(jù)需要進(jìn)行加工,提取需要展示的數(shù)據(jù),日期和同比數(shù)據(jù),數(shù)據(jù)的格式需要轉(zhuǎn)換。
  • 2 cpi 和 ppi 從時(shí)間上來(lái)講長(zhǎng)度不一致,需要既然要展示,就需要放在同一段時(shí)間內(nèi)進(jìn)行比較。
  • 3 cpi 和 ppi 數(shù)據(jù)已經(jīng)有 20 多年了,從實(shí)際需要的角度出發(fā),這里只展示 10 年的數(shù)據(jù)即可。

按照以上的觀點(diǎn),數(shù)據(jù)處理的代碼如下圖所示:

對(duì)于圖形的繪制,有以下幾點(diǎn):

  • 1 圖形中需要展示 cpi 和 ppi 的數(shù)據(jù)情況,同時(shí)展示圖例進(jìn)行標(biāo)識(shí)。
  • 2 設(shè)置縱向和橫向的數(shù)據(jù)參考線。
  • 3 能夠體現(xiàn)出數(shù)據(jù)的差值區(qū)間和范圍,差值部分進(jìn)行顏色填充并予以區(qū)分。 針對(duì)以上幾點(diǎn),繪制圖形的代碼如下圖所示:

其余諸如時(shí)間過(guò)濾以及接口配置和引入的類庫(kù)如下圖所示:

最后,經(jīng)過(guò)這些編碼,得到了最終的 cpi-ppi 的剪刀差圖形如下:

總結(jié)

文章介紹了簡(jiǎn)單的 python 爬蟲(chóng),并使用 numpy 進(jìn)行了簡(jiǎn)單的數(shù)據(jù)處理,最終使用 matplotlib 進(jìn)行圖形繪制,實(shí)現(xiàn)了直觀的方式展示 cpi-ppi 的剪刀差圖形。使用接口的方式獲取數(shù)據(jù)能夠隨時(shí)隨地的跟據(jù)數(shù)據(jù)的更新重新繪制圖形,省去了數(shù)據(jù)重新抓取的步驟。

到此這篇關(guān)于Python數(shù)據(jù)分析之繪制ppi-cpi剪刀差圖形的文章就介紹到這了,更多相關(guān)Python繪制ppi-cpi圖內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論