如何制作彩色地图plt.imshow公司()在两个不同的绘图上设置为相同的值

2024-09-30 20:28:07 发布

您现在位置:Python中文网/ 问答频道 /正文

考虑以下几点。我有两个情节:

fig = plt.figure()
plt.imshow(nonfour, cmap='gray')

enter image description here

fig = plt.figure()
plt.imshow(np.abs(four), cmap='gray')

enter image description here

这两个图是使用数组nonfour和np.abs公司(四)。创建每个绘图时,使用每个数组的最小值和最大值设置颜色贴图。你知道吗

我想做的是从我的第一个绘图中生成一个cmap,并将其用作我的第二个绘图的cmap

(即,第二个绘图的颜色图将基于第一个绘图的最大值和最小值)。你知道吗


Tags: 绘图颜色npfig公司pltabs数组
1条回答
网友
1楼 · 发布于 2024-09-30 20:28:07

正如thomaskühn所指出的,imshow使用关键字vminvmax来控制颜色图的比例。您可以使用get_clim()方法获得第一个绘图的(自动确定的)值:

# Create your first plot
img = plt.imshow(nonfour, cmap='gray')

# Extract vmin and vmax
vmin, vmax = img.get_clim()

# Create your second plot using these limits
plt.imshow(np.abs(four), cmap='gray', vmin=vmin, vmax=vmax)

或者,也可以使用set_clim()方法:

img = plt.imshow(nonfour, cmap='gray')
img2 = plt.imshow(np.abs(four), cmap='gray')
img2.set_clim(img.get_clim())

相关问题 更多 >