首頁 >後端開發 >Python教學 >為什麼我的 Seaborn 熱圖會切斷第一行和最後一行?

為什麼我的 Seaborn 熱圖會切斷第一行和最後一行?

Linda Hamilton
Linda Hamilton原創
2024-12-06 03:25:12778瀏覽

Why Are My Seaborn Heatmaps Cutting Off the First and Last Rows?

第一行和最後一行的熱圖減半

在Seaborn 熱圖和Matplotlib 相關矩陣中,觀察到第一行最後一行通常被切成兩半。即使在最小的程式碼範例中也可能會遇到此問題:

import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt

data = pd.read_csv('https://raw.githubusercontent.com/resbaz/r-novice-gapminder-files/master/data/gapminder-FiveYearData.csv')
plt.figure(figsize=(10,5))
sns.heatmap(data.corr())
plt.show()

結果圖在 y 軸上的正確位置顯示標籤,但行本身不完整。

問題的起源:

不幸的是,Matplotlib 版本 3.1.1 引入了一個影響Seaborn 熱圖和具有固定刻度的倒軸。

解決方案:

要解決這個問題,您可以考慮以下選項:

  • 恢復到Matplotlib 3.1.0:這個版本的Matplotlib沒有表現出來
  • 更新到 Matplotlib 3.1.2 或更高版本:該錯誤已在當前開發版本中修復。
  • 手動設定熱圖限制: 作為解決方法,您可以使用 ax.set_ylim(bottom, top) 手動設定熱圖限制來定義底部和頂部y 軸的限制。

以上是為什麼我的 Seaborn 熱圖會切斷第一行和最後一行?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn