Python數(shù)據(jù)科學(九)- 使用Pandas繪制統(tǒng)計圖表

傳送門:

1.信息可視化

因為人對圖像信息的解析效率比文字更高,所以可視化可以使數(shù)據(jù)更為直觀,便于理解,使決策變得高效,所以信息可視化就顯得尤為重要。

1.嘗試做一個折線圖

df.plot()方法的函數(shù)說明

  • DataFrame還可以用于對列進行靈活處理的選項
  • 用折線圖對比各個指數(shù)的實時的開盤點位,并設置圖像大小

df['open'].plot(kind='line', figsize=[5,5], legend=True, title='code')
# 如果需要加入折線,設置參數(shù)grid=True即可
df['open'].plot(kind='line', figsize=[10,5], legend=True, title='code', grid=True)

2.繪制移動平均線

  • 獲取上證指數(shù)5.21日分筆歷史數(shù)據(jù)
import tushare as ts
df = ts.get_tick_data('000001', date='2018-05-21')

返回值說明:

  • time:時間
  • price:成交價格
  • change:價格變動
  • volume:成交手
  • amount:成交金額(元)
  • type:買賣類型【買盤、賣盤、中性盤】
  • 繪制當日前20條數(shù)據(jù)成交金額變動折線圖
df = df.head(200)
df['amount'].plot(kind='line', figsize=[15,3], legend=True, title='code', grid=True)
  • 繪制移動平均線
    移動平均線,Moving Average,簡稱MA,MA是用統(tǒng)計分析的方法,將一定時期內(nèi)的證券價格(指數(shù))加以平均,并把不同時間的平均值連接起來,形成一根MA,用以觀察證券價格變動趨勢的一種技術(shù)指標。
DataFrame.rolling(*window*,*min_periods = None*,*center = False*,
                    *win_type = None*,*on = None*,*axis = 0*,*closed = None *)[[source]]

參數(shù)說明:

  • window:int或偏移量移動窗口的大小,這僅適用于日期時間類型的索引。
  • min_periods:int,默認無窗口中需要有最小數(shù)量的觀測數(shù)據(jù)(否則結(jié)果為NA)。對于由偏移量指定的窗口,這將默認為1。
  • center:布爾值,默認為False將標簽設置在窗口的中心。
  • win_type:字符串,默認無提供一個窗口類型。如果None,所有點均勻加權(quán)。
  • on:字符串,可選用于計算滾動窗口的DataFrame列,而不是索引
  • closed:字符串,默認無在'右','左','雙'或'既非'端點上關(guān)閉間隔。
  • axis: 軸,int或字符串,默認為0
df['mvg2']=df['amount'].rolling(window=2).mean()
df[['amount', 'mvg2']].plot(kind='line',figsize=[10,5])

3.繪制直方圖

  • 我們找出5.21號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

# 獲取大盤指數(shù)實時行情列表
df = ts.get_index()
df['diff'] = df['close'] - df['open']
df['rise'] = df['diff'] > 0  # 漲
df['fall'] = df['diff'] < 0  # 跌
# counterclock 布爾值,可選參數(shù),默認為:None。指定指針方向,順時針或者逆時針
# startangle浮點類型,可選參數(shù),默認:None。如果不是None,從x軸逆時針旋轉(zhuǎn)餅圖的開始角度。
df[['rise', 'fall']].sum().plot(kind='pie', figsize=[5,5], counterclock=True, 
                                  startangle=90, legend=True, title='diff')

如果你覺得我的文章還可以,可以關(guān)注我的微信公眾號:Python攻城獅

可掃描二維碼,添加關(guān)注

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容