您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

仅绘制热图的上/下三角形

仅绘制热图的上/下三角形

doug提供的答案的问题在于,它依赖于色图将零值映射到白色这一事实。这意味着不包含白色的颜色图将无用。解决方案的关键是cm.set_bad功能。您可以使用None或NumPy掩码数组将矩阵的不需要部分掩码set_bad为白色,而不是认的黑色。以道格为例,我们得到以下信息:

import numpy as NP
from matplotlib import pyplot as plt
from matplotlib import cm as CM

A = NP.random.randint(10, 100, 100).reshape(10, 10)
mask =  NP.tri(A.shape[0], k=-1)
A = NP.ma.array(A, mask=mask) # mask out the lower triangle
fig = plt.figure()
ax1 = fig.add_subplot(111)
cmap = CM.get_cmap('jet', 10) # jet doesn't have white color
cmap.set_bad('w') # default value is 'k'
ax1.imshow(A, interpolation="nearest", cmap=cmap)
ax1.grid(True)
plt.show()
其他 2022/1/1 18:25:15 有484人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶