我有一個使用 seaborn 的熱圖,我正在嘗試調(diào)整下面第 4 個圖的高度。您會看到它只有 2 行數(shù)據(jù),而其他數(shù)據(jù)行更多:我使用以下代碼來創(chuàng)建情節(jié):f, ax = plt.subplots(nrows=4,figsize=(20,10))cmap = plt.cm.GnBu_rsns.heatmap(df,cbar=False,cmap=cmap,ax=ax[0])sns.heatmap(df2,cbar=False,cmap=cmap,ax=ax[1])sns.heatmap(df3,cbar=False,cmap=cmap,ax=ax[2])sns.heatmap(df4,cbar=False,cmap=cmap,ax=ax[3])有誰知道下一步要使第 4 個地塊的高度變小,從而拉伸其他 3 個地塊?第 4 個地塊通??偸怯?2-3 個,而其他地塊最多有 6-7 個。非常感謝!
1 回答

偶然的你
TA貢獻1841條經(jīng)驗 獲得超3個贊
像往常一樣,matplotlib 非常時髦/乏味。但它就在這里!
f = plt.figure(constrained_layout = True)
specs = f.add_gridspec(ncols = 1, nrows = 4, height_ratios = [1,1,1,.5])
for spec, df in zip(specs, (df, df2, df3, df4)):
ax = sns.heatmap(df,cbar=False,cmap=cmap, ax=f.add_subplot(spec))
您可以使用 height_ratios 更改相對于彼此的高度。如果你想改變相對寬度,你也可以實現(xiàn)一個 wdith_ratios 參數(shù)。您還可以實現(xiàn)一個 for 循環(huán)來遍歷圖形。
添加回答
舉報
0/150
提交
取消