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

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

Susan Sarandon
Susan Sarandon原創
2024-12-05 00:25:12347瀏覽

Why Are My Seaborn Heatmap's First and Last Rows Truncated?

第一行和最後一行的熱圖截斷

此查詢深入研究了使用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 軸標籤,但行本身不完整。儘管恢復到舊版本的 LaTeX,這個問題仍然存在。

解決方案

不幸的是,matplotlib 版本 3.1.1 引入了一個缺陷,影響seaborn 熱圖和倒軸固定刻度。有幾個解決方案可用:

  • 恢復到 matplotlib 版本 3.1.0:此版本不存在此問題。
  • 升級到matplotlib 版本3.1 .2或更高版本:此問題已在最新開發中解決
  • 手動設定熱圖限制:透過明確設定y 軸限制,可以避免截斷:
ax.set_ylim(bottom, top) # set the ylim to bottom, top

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

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