
傳送門:
- Python數(shù)據(jù)科學(一)- python與數(shù)據(jù)科學應用(Ⅰ)
- Python數(shù)據(jù)科學(二)- python與數(shù)據(jù)科學應用(Ⅱ)
- Python數(shù)據(jù)科學(三)- python與數(shù)據(jù)科學應用(Ⅲ)
- Python數(shù)據(jù)科學(四)- 數(shù)據(jù)收集系列
- Python數(shù)據(jù)科學(五)- 數(shù)據(jù)處理和數(shù)據(jù)采集
- Python數(shù)據(jù)科學(六)- 資料清理(Ⅰ)
- Python數(shù)據(jù)科學(七)- 資料清理(Ⅱ)
- Python數(shù)據(jù)科學(八)- 資料探索與資料視覺化
- 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)注
