首页 >后端开发 >Python教程 >为什么我的 Seaborn 热图会切断第一行和最后一行?

为什么我的 Seaborn 热图会切断第一行和最后一行?

Linda Hamilton
Linda Hamilton原创
2024-12-06 03:25:12774浏览

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