我有一個使用 seaborn 的熱圖,我正在嘗試調整下面第 4 個圖的高度。您會看到它只有 2 行數據,而其他數據行更多:我使用以下代碼來創建情節: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條經驗 獲得超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 更改相對于彼此的高度。如果你想改變相對寬度,你也可以實現一個 wdith_ratios 參數。您還可以實現一個 for 循環來遍歷圖形。
添加回答
舉報
0/150
提交
取消