傳送門(mén):
- Python數(shù)據(jù)科學(xué)(一)- python與數(shù)據(jù)科學(xué)應(yīng)用(Ⅰ)
- Python數(shù)據(jù)科學(xué)(二)- python與數(shù)據(jù)科學(xué)應(yīng)用(Ⅱ)
- Python數(shù)據(jù)科學(xué)(三)- python與數(shù)據(jù)科學(xué)應(yīng)用(Ⅲ)
- Python數(shù)據(jù)科學(xué)(四)- 數(shù)據(jù)收集系列
- Python數(shù)據(jù)科學(xué)(五)- 數(shù)據(jù)處理和數(shù)據(jù)采集
- Python數(shù)據(jù)科學(xué)(六)- 資料清理(Ⅰ)
- Python數(shù)據(jù)科學(xué)(七)- 資料清理(Ⅱ)
- Python數(shù)據(jù)科學(xué)(八)- 資料探索與資料視覺(jué)化
- Python數(shù)據(jù)科學(xué)(九)- 使用Pandas繪制統(tǒng)計(jì)圖表
1.信息可視化
因?yàn)槿藢?duì)圖像信息的解析效率比文字更高绒窑,所以可視化可以使數(shù)據(jù)更為直觀,便于理解咖祭,使決策變得高效宪哩,所以信息可視化就顯得尤為重要。
1.嘗試做一個(gè)折線(xiàn)圖
df.plot()方法的函數(shù)說(shuō)明
-
DataFrame還可以用于對(duì)列進(jìn)行靈活處理的選項(xiàng)
用折線(xiàn)圖對(duì)比各個(gè)指數(shù)的實(shí)時(shí)的開(kāi)盤(pán)點(diǎn)位,并設(shè)置圖像大小
df['open'].plot(kind='line', figsize=[5,5], legend=True, title='code')
# 如果需要加入折線(xiàn)开缎,設(shè)置參數(shù)grid=True即可
df['open'].plot(kind='line', figsize=[10,5], legend=True, title='code', grid=True)
2.繪制移動(dòng)平均線(xiàn)
- 獲取上證指數(shù)5.21日分筆歷史數(shù)據(jù)
import tushare as ts
df = ts.get_tick_data('000001', date='2018-05-21')
返回值說(shuō)明:
- time:時(shí)間
- price:成交價(jià)格
- change:價(jià)格變動(dòng)
- volume:成交手
- amount:成交金額(元)
- type:買(mǎi)賣(mài)類(lèi)型【買(mǎi)盤(pán)、賣(mài)盤(pán)林螃、中性盤(pán)】
- 繪制當(dāng)日前20條數(shù)據(jù)成交金額變動(dòng)折線(xiàn)圖
df = df.head(200)
df['amount'].plot(kind='line', figsize=[15,3], legend=True, title='code', grid=True)
- 繪制移動(dòng)平均線(xiàn)
移動(dòng)平均線(xiàn)奕删,Moving Average,簡(jiǎn)稱(chēng)MA疗认,MA是用統(tǒng)計(jì)分析的方法完残,將一定時(shí)期內(nèi)的證券價(jià)格(指數(shù))加以平均,并把不同時(shí)間的平均值連接起來(lái)横漏,形成一根MA谨设,用以觀察證券價(jià)格變動(dòng)趨勢(shì)的一種技術(shù)指標(biāo)。
DataFrame.rolling(*window*缎浇,*min_periods = None*扎拣,*center = False*,
*win_type = None*素跺,*on = None*二蓝,*axis = 0*,*closed = None *)[[source]]
參數(shù)說(shuō)明:
- window:int或偏移量移動(dòng)窗口的大小指厌,這僅適用于日期時(shí)間類(lèi)型的索引刊愚。
- min_periods:int,默認(rèn)無(wú)窗口中需要有最小數(shù)量的觀測(cè)數(shù)據(jù)(否則結(jié)果為NA)踩验。對(duì)于由偏移量指定的窗口鸥诽,這將默認(rèn)為1。
- center:布爾值晰甚,默認(rèn)為False將標(biāo)簽設(shè)置在窗口的中心衙传。
- win_type:字符串,默認(rèn)無(wú)提供一個(gè)窗口類(lèi)型厕九。如果None蓖捶,所有點(diǎn)均勻加權(quán)。
- on:字符串扁远,可選用于計(jì)算滾動(dòng)窗口的DataFrame列俊鱼,而不是索引
- closed:字符串,默認(rèn)無(wú)在'右'畅买,'左'并闲,'雙'或'既非'端點(diǎn)上關(guān)閉間隔。
- axis: 軸谷羞,int或字符串帝火,默認(rèn)為0
df['mvg2']=df['amount'].rolling(window=2).mean()
df[['amount', 'mvg2']].plot(kind='line',figsize=[10,5])
3.繪制直方圖
- 我們找出5.21號(hào)14:55 - 14:57 這兩分鐘內(nèi)的上證指數(shù)數(shù)據(jù)溜徙,觀察它的成交金額變化
df.ix[(df.time>='14:55:00')&(df.time<='14:57:00'),'amount'].plot(kind='bar', figsize=[10,5], legend=True, title='amount')
4.繪制圓餅圖
import tushare
# 獲取大盤(pán)指數(shù)實(shí)時(shí)行情列表
df = ts.get_index()
df['diff'] = df['close'] - df['open']
df['rise'] = df['diff'] > 0 # 漲
df['fall'] = df['diff'] < 0 # 跌
# counterclock 布爾值,可選參數(shù)犀填,默認(rèn)為:None蠢壹。指定指針?lè)较颍槙r(shí)針或者逆時(shí)針
# startangle浮點(diǎn)類(lèi)型九巡,可選參數(shù)图贸,默認(rèn):None。如果不是None冕广,從x軸逆時(shí)針旋轉(zhuǎn)餅圖的開(kāi)始角度疏日。
df[['rise', 'fall']].sum().plot(kind='pie', figsize=[5,5], counterclock=True,
startangle=90, legend=True, title='diff')
如果你覺(jué)得我的文章還可以,可以關(guān)注我的微信公眾號(hào):Python攻城獅
可掃描二維碼撒汉,添加關(guān)注