【发布时间】:2021-10-30 16:58:58
【问题描述】:
请注意,我也在使用 StandardScaler。我不确定这是否会影响任何事情。我可以尝试为此提供可重现的代码,但也许没有必要。这可能只是一件麻木的事情。
import numpy as np
x = np.random.rand(60,60,1)
现在我们绘制它,以查看图像。
cs = plt.imshow(x)
plt.colorbar()
plt.show()
我们使用 imshow 执行此操作,它确实接受 3D 数组。不过,我们需要使用仅接受 2D 数组的 contourf。
x = x.reshape(1, 60*60)
现在,我想绘制这个,所以我想把它放到(60,60)。但是如果我只是重新整形回(60,60),图像就会失真。
x = x.reshape(60,60)
cs = plt.contourf(x)
plt.colorbar()
plt.show()
我特别要求对其进行重塑,以便 1. 它与第一张图像相同,以及 2. 可以使用 contourf 完成,因为这是唯一可以使用自定义颜色条的功能据我所知。可以看到图像不同,因为每个颜色条上的最大值不同(0.8 vs 1.05)
【问题讨论】:
-
你为什么使用
contourf而不是再次使用imshow? -
我无法让颜色条与 imshow 一起使用。它只是空白。
标签: python arrays numpy matplotlib