import pandas as pd
import matplotlib.pyplot as plt
import tushare as ts
pro = ts.pro_api(
)import math
plt.rcparams[
"font.sans-serif"]=
"simhei"
import numpy as np
首先需要匯入pandas和numpy模組完成資料分析的工作,還需要matplolib進行畫圖,最後需要獲取指數的相關資料,這裡匯入了tushare資料報,tushare官網有資料報使用的詳細教程。
df = pd.dataframe(columns=
["上證綜指"
,"深證成指"
,"中小板指"
,"創業板指"
,"科創50"
,"上證50"
,"滬深300"
,"中證500"])
list_code =
["000001.sh"
,"399001.sz"
,"399005.sz"
,"399006.sz"
,"000688.sh"
,"000016.sh"
,"399300.sz"
,"399905.sz"
]list_index =
["上證綜指"
,"深證成指"
,"中小板指"
,"創業板指"
,"科創50"
,"上證50"
,"滬深300"
,"中證500"
]for each in
range
(len
(list_code)):
df1 = pro.index_daily(ts_code=list_code[each]
,start_date=
20200315
,end_date=
20210315
) df1.sort_values(by=
"trade_date"
,ascending=
true
,inplace=
true
) list1 = df1[
"close"
].tolist(
) list_return =
for i in
range
(len
(list1)):
if i <
len(list1)-1
: r = math.log(list1[i+1]
/list1[i]
) df[list_index[each]
]= list_return
corr = df.corr(
)
利用tushare獲取指數的日線**,這裡獲取了近一年的日線**。之後利用公式計算出每日收益率。最後利用pandas裡的corr函式可以直接返回相關係數**。如下圖所示:
首先設定好畫布大小和熱力圖顏色,顏色的方案在csdn很多文章都有介紹。這裡使用orrd的配色。繪製效果如下圖:
資料視覺化 什麼是資料視覺化
資料對應的英文單詞是data,從資訊獲取的角度看,資料是對目標觀察和記錄的結果,是現實世界中的時間 地點 事件 其他物件或概念的描述。不同學者對資料的作用也給出不同的定義,大致分為以下3類 視覺化對應的兩個英文單詞 visualize和visualization。visualize是動詞,描述 生成...
資料視覺化
資料視覺化主要旨在借助於圖形化手段,清晰有效地傳達與溝通資訊。但是,這並不就意味著資料視覺化就一定因為要實現其功能用途而令人感到枯燥乏味,或者是為了看上去絢麗多彩而顯得極端複雜。為了有效地傳達思想概念,美學形式與功能需要齊頭並進,通過直觀地傳達關鍵的方面與特徵,從而實現對於相當稀疏而又複雜的 資料集...
資料視覺化
畫餅圖 def print pie input data res for each in input data res each res.get each,0 1 label x for j in res fig plt.figure plt.pie x,labels label,autopct 1...