相关文章推荐
眉毛粗的毛衣  ·  AttributeError: ...·  2 周前    · 
迷茫的皮带  ·  Java与MySQL之间Blob数据转换_b ...·  11 月前    · 
冲动的皮带  ·  一直显示Hive Session ...·  1 年前    · 
年轻有为的小狗  ·  从单幅图像到双目立体视觉的3D目标检测算法 ...·  1 年前    · 
大气的木耳  ·  [Solved] Error: ...·  2 年前    · 
老实的玉米  ·  预告章节-雾种起源-🌈️包子漫畫·  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 周前
迷茫的皮带  ·  Java与MySQL之间Blob数据转换_blob mysql转文件 java-CSDN博客
11 月前
冲动的皮带  ·  一直显示Hive Session ID_mob64ca12f028ff的技术博客_51CTO博客
1 年前
年轻有为的小狗  ·  从单幅图像到双目立体视觉的3D目标检测算法 | 机器之心
1 年前
大气的木耳  ·  [Solved] Error: initializer element is not constant - CodeProject
2 年前
老实的玉米  ·  预告章节-雾种起源-🌈️包子漫畫
2 年前
今天看啥   ·   Py中国   ·   codingpro   ·   小百科   ·   link之家   ·   卧龙AI搜索
删除内容请联系邮箱 2879853325@qq.com
Code - 代码工具平台
© 2024 ~ 沪ICP备11025650号