相关文章推荐
眉毛粗的毛衣  ·  AttributeError: ...·  2 月前    · 
干练的稀饭  ·  单细胞分析 scenic 跑一半总是会中断 ...·  1 年前    · 
光明磊落的花生  ·  导入Postman脚本-性能测试PTS-操作 ...·  1 年前    · 
愉快的眼镜  ·  JavaScript中onclick事件传递 ...·  1 年前    · 
玩篮球的松树  ·  C++多态性总结 - --believe ...·  2 年前    · 
追风的投影仪  ·  java 获取枚举类的所有值-掘金·  2 年前    · 
Code  ›  python - Seaborn 热图:在图的顶部移动颜色条 -
python seaborn
https://segmentfault.com/q/1010000043310178
傻傻的开水瓶
2 年前
segmentfault segmentfault
注册登录
问答 博客 标签 活动
发现
✓ 使用“Bing”搜本站 使用“Google”搜本站 使用“百度”搜本站 站内搜索
注册登录
  1. 首页
  2. 问答
  3. Stack Overflow 翻译
  4. 问答详情

Seaborn 热图:在图的顶部移动颜色条

社区维基
1
发布于
1 月 11 日
新手上路,请多包涵

我有一个使用 seaborn 库创建的基本热图,我想将颜色条从默认的垂直右侧移动到热图上方的水平颜色条。我怎样才能做到这一点?

下面是一些示例数据和默认示例:

 import matplotlib.pyplot as plt
import seaborn as sns
import pandas as pd
import numpy as np
# Create data
df = pd.DataFrame(np.random.random((5,5)), columns=["a","b","c","d","e"])
# Default heatma
ax = sns.heatmap(df)
plt.show()

原文由 rer 发布,翻译遵循 CC BY-SA 4.0 许可协议

Stack Overflow 翻译 python python-2.7 pandas matplotlib seaborn
阅读 232
2 个回答
得票 最新
社区维基
1
发布于
1 月 11 日
✓ 已被采纳

查看 文档 我们发现一个参数 cbar_kws 。这允许指定传递给 matplotlib 的 fig.colorbar 方法的参数。

cbar_kws :键字典,值映射,可选。 fig.colorbar 的关键字参数。

所以我们可以使用 --- 的任何可能参数,为 cbar_kws fig.colorbar 提供字典。

在这种情况下,您需要 location="top" 将颜色条放在顶部。因为 colorbar 默认情况下使用 gridspec 定位颜色条,然后不允许设置位置,我们需要关闭该 gridspec ( use_gridspec=False )。

 sns.heatmap(df, cbar_kws = dict(use_gridspec=False,location="top"))

完整示例:

 import matplotlib.pyplot as plt
import seaborn as sns
import pandas as pd
import numpy as np
df = pd.DataFrame(np.random.random((5,5)), columns=["a","b","c","d","e"])
ax = sns.heatmap(df, cbar_kws = dict(use_gridspec=False,location="top"))
plt.show()

原文由 ImportanceOfBeingErnest 发布,翻译遵循 CC BY-SA 3.0 许可协议

社区维基
1
发布于
1 月 11 日

我想展示带有子图的示例,它允许控制图的大小以保留热图的方形几何形状。这个例子很短:

 import matplotlib.pyplot as plt
import seaborn as sns
import pandas as pd
import numpy as np
# Create data
df = pd.DataFrame(np.random.random((5,5)), columns=["a","b","c","d","e"])
# Define two rows for subplots
fig, (cax, ax) = plt.subplots(nrows=2, figsize=(5,5.025),  gridspec_kw={"height_ratios":[0.025, 1]})
# Draw heatmap
sns.heatmap(df, ax=ax, cbar=False)
# colorbar
fig.colorbar(ax.get_children()[0], cax=cax, orientation="horizontal")
plt.show()
 
推荐文章
眉毛粗的毛衣  ·  AttributeError: module 'matplotlib' has no attribute 'rcParams_Fix for matplotlib rcParams error_ -
2 月前
干练的稀饭  ·  单细胞分析 scenic 跑一半总是会中断 如何解决_编程语言-CSDN问答
1 年前
光明磊落的花生  ·  导入Postman脚本-性能测试PTS-操作指南-导入场景 - 天翼云
1 年前
愉快的眼镜  ·  JavaScript中onclick事件传递数组参数时接收的是[object,object],需要转为字符串传递-腾讯云开发者社区-腾讯云
1 年前
玩篮球的松树  ·  C++多态性总结 - --believe - 博客园
2 年前
追风的投影仪  ·  java 获取枚举类的所有值-掘金
2 年前
今天看啥   ·   Py中国   ·   codingpro   ·   小百科   ·   link之家   ·   卧龙AI搜索
删除内容请联系邮箱 2879853325@qq.com
Code - 代码工具平台
© 2024 ~ 沪ICP备11025650号