heatmap學習筆記
#heatmap熱度圖,seaborn中常用的圖,也是我最喜歡畫的一種圖
#重要點思維:拿到一批數據一般會求特徵之間的相關係數,可以用padas直接求出來相關係數,放到heatmap,可以很清楚的看到兩個特徵的相關程度,這是一個固定的數據思維
#用途:比如拿到一批離散數據,想看一下在哪個點值比較大,在哪個點值比較低,你想把這樣一個值的變化,用顏色來區分出來,這是我們要做的一個變化
importmatplotlib.pyplot
as
plt
importnumpy
as
np
np.random.seed(0)
importseaborn
as
sns
sns.set()
#顏色可以由淺到深,可以由深到淺,比如股票每天的漲跌
#
#隨機生成一個3*3矩陣,點heatmap穿進去數據,調色板叫做col_bar,很明顯的看出這堆數中的值大小
uniform_data=np.random.rand(3,3)
heatmap=sns.heatmap(uniform_data)
#可以區間設置,vmin
vmax,大於或小於v的全是一個顏色,只有在這區間的纔會分顏色
ax=sns.heatmap(uniform_data,vmin=0.2,vmax=0.5)
#比如拿到的數據是權重參數,又有正負,正是漲,負是跌,定義center=0,以0爲中心畫這個數據
normal_data = np.random.randn(3,3)
ax2 = sns.heatmap(normal_data,center=0)
#讀取航班數據集flights,seaborn自帶的,1949年乘機的人數passengers
#需要橫軸表示年份,縱軸月份,點的值是大小
#把當前的數據轉換爲可以用的矩陣格式,讀取的dataframe的,然後.pivot一下(x,y,值)x和y直接寫列名即可,直接把dataframe中的year和month傳進來,加一個註釋項annot=True,fmt=“d”即是在圖上顯示數據值,linwidth=.5加上一個格,這個圖會比較更清晰,調色板是cmap=“YIGnBu”,顏色,cbar=false是隱藏,但是一般不隱藏不然不知道圖例了
#默認顏色太醜,應該設置一下常用的顏色
flights = sns.load_dataset('flights')
# print(flights.head())
flights=flights.pivot('month','year','passengers')#pivot函數重要
# print(flights.head())
sns.heatmap(flights)#注意這裏是直接傳入數據集即可,不需要再單獨傳入x和y了
sns.heatmap(flights,linewidth=.5,annot=True,fmt='d')
#改變顏色
ax= sns.heatmap(flights,cbar=False,cmap='YlGnBu')
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.