根据像素值设定 Matplotlib 中的透明度


要根据 matplotlib 中的像素值设置透明度,请获取掩码数据,数据值小于某个值时在该处获取掩码数据。值越小,两幅图像之间的完全重叠程度越大。

步骤

  • 使用 numpy 创建 data1 data2 

  • 使用 numpy 的 masked_where() 方法获取掩码数据。

  • 使用 subplots() 方法创建图形和一组子图 (fig 和 ax)。

  • 使用 imshow() 方法,使用不同的配色图(jet 和灰度)显示数据(data1 掩码数据)作为图像,即,在 2D 正则光栅上显示。

  • 要显示图形,请使用 show() 方法。

示例

import numpy as np
import matplotlib.pyplot as plt
import matplotlib.cm as cm
plt.rcParams["figure.figsize"] = [7.00, 3.50]
plt.rcParams["figure.autolayout"] = True
data1 = np.random.rand(50, 50)
data2 = np.random.rand(50, 50)
masked_data = np.ma.masked_where(data2 < .7, data2)
fig, ax = plt.subplots()
ax.imshow(data2, cmap=cm.gray)
ax.imshow(masked_data, cmap=cm.jet, interpolation='none')
plt.show()

输出

更新于: 08-May-2021

947 次浏览

开启你的 事业

完成课程即可获得认证

开始
广告