Dim*_*iev 5 python matplotlib seaborn
我想修改一个颜色条的刻度seaborn.clustermap.这个答案解决了一般matplotlib颜色条的这个问题.
g = sns.clustermap(np.random.rand(20,20),
row_cluster=None, col_cluster=None,
vmin = 0.25, vmax=1.0)
Run Code Online (Sandbox Code Playgroud)
出于某种原因,当我指定时clustermap(..., vmin=0.25, vmax=1.0),我会得到0.3到0.9的刻度,但没有1.0.如果我延长vmax=1.05,我会得到一个精确的嘀嗒声1.05.
我的猜测是g.cax返回的对象的属性clustermap是colorbar,但它没有.set_ticks()方法.
任何想法如何设置滴答声?
就像seaborn.heatmap该seaborn.clustermap有一个参数cbar_kws(彩条关键字参数).这需要一个matplotlib colorbar函数可能参数的字典.因为使用matplotlib,我们会使用tickscolorbar参数来手动设置滴答,我们可以提供这样的字典
g = sns.clustermap(..., cbar_kws={"ticks":[0.25,1]})
Run Code Online (Sandbox Code Playgroud)
获取颜色条上0.25和1中的刻度线.(如果你想要更多的标记,那么列表当然可以扩展.)
完整代码:
import seaborn as sns
import matplotlib.pyplot as plt
import numpy as np
g = sns.clustermap(np.random.rand(20,20),
row_cluster=None, col_cluster=None,
vmin = 0.25, vmax=1.0, cbar_kws={"ticks":[0.25,1]})
plt.show()
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3470 次 |
| 最近记录: |