第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

如何保持sns.heatmap的對角線中的那些?

如何保持sns.heatmap的對角線中的那些?

溫溫醬 2021-11-23 16:58:04
我想用 sns.heatmap 繪制相關(guān)矩陣并有一些問題。這是我的代碼:plt.figure(figsize=(8,8))mask =np.zeros_like(data.corr())mask[np.triu_indices_from(mask)] = Truesns.heatmap(data.corr(), mask=mask, linewidth=1, annot=True, fmt=".2f",cmap='coolwarm',vmin=-1, vmax=1)plt.show()這就是我得到的:[相關(guān)矩陣][1][1]:https : //i.stack.imgur.com/DX2oN.png \現(xiàn)在我有一些問題:1)我怎樣才能保持對角線中的那些?2)如何改變x軸的位置?3)我希望顏色條從 1 變?yōu)?-1,但代碼不起作用我希望有人能幫幫忙。謝謝
查看完整描述

2 回答

?
SMILET

TA貢獻(xiàn)1796條經(jīng)驗(yàn) 獲得超4個(gè)贊

我認(rèn)為你必須檢查data.corr(),因?yàn)槟愕拇a是正確的,并給出了診斷(見下文)。一個(gè)問題是:您使用np.triu但您顯示的圖片顯示 np.tirl。


這是我測試過的代碼 - 對角線在那里:


N = 5

A = np.arange(N*N).reshape(N,N)


B = np.tril(A)


mask =np.zeros_like(A)

mask[np.triu_indices_from(mask)] = True


print('A'); print(A); print()

print('tril(A)'); print(B); print()

print('mask'); print(mask); print()


A

[[ 0  1  2  3  4]

 [ 5  6  7  8  9]

 [10 11 12 13 14]

 [15 16 17 18 19]

 [20 21 22 23 24]]


tril(A)

[[ 0  0  0  0  0]

 [ 5  6  0  0  0]

 [10 11 12  0  0]

 [15 16 17 18  0]

 [20 21 22 23 24]]


mask

[[1 1 1 1 1]

 [0 1 1 1 1]

 [0 0 1 1 1]

 [0 0 0 1 1]

 [0 0 0 0 1]]

編輯:補(bǔ)充


你可以重新調(diào)整面具,例如


C = A *mask

D = np.where(C > 1, 1,C)

print('D'); print(D)


D

[[0 1 1 1 1]

 [0 1 1 1 1]

 [0 0 1 1 1]

 [0 0 0 1 1]

 [0 0 0 0 1]]

D 的對角線的第一個(gè)元素現(xiàn)在是零,因?yàn)?A 的對角線的第一個(gè)元素也是零。


編輯:補(bǔ)充2


F = np.tril(A,-1)

E = np.eye(N)

G = E + F


print('F'); print(F); print()

print('E'); print(E); print()

print('G'); print(G); print()


F

[[ 0  0  0  0  0]

 [ 5  0  0  0  0]

 [10 11  0  0  0]

 [15 16 17  0  0]

 [20 21 22 23  0]]


E

[[1. 0. 0. 0. 0.]

 [0. 1. 0. 0. 0.]

 [0. 0. 1. 0. 0.]

 [0. 0. 0. 1. 0.]

 [0. 0. 0. 0. 1.]]


G

[[ 1.  0.  0.  0.  0.]

 [ 5.  1.  0.  0.  0.]

 [10. 11.  1.  0.  0.]

 [15. 16. 17.  1.  0.]

 [20. 21. 22. 23.  1.]]


查看完整回答
反對 回復(fù) 2021-11-23
?
繁花不似錦

TA貢獻(xiàn)1851條經(jīng)驗(yàn) 獲得超4個(gè)贊

x軸位置的變化

由于我對 seaborn 沒有經(jīng)驗(yàn),我會(huì)使用 matplotlib 來繪制熱圖(此處為示例),然后使用 matplotlibtwinx()twiny()將軸放置在您想要的位置(此處為示例)。

(我認(rèn)為這也可以用 seaborn 來完成 - 我只是不知道)


查看完整回答
反對 回復(fù) 2021-11-23
  • 2 回答
  • 0 關(guān)注
  • 417 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號