Python 如何使用matplotlib将RGB颜色值指定给栅格网格 请考虑这个简化片段: import numpy as np x = np.arange(3) y = np.arange(2) X, Y = np.meshgrid(x,y)

Python 如何使用matplotlib将RGB颜色值指定给栅格网格 请考虑这个简化片段: import numpy as np x = np.arange(3) y = np.arange(2) X, Y = np.meshgrid(x,y),python,matplotlib,Python,Matplotlib,我想为每个网格单元分配已经准备好的颜色值。 对于每个RGB通道,我有与XY网格形状相同的颜色值作为标准化的RGB值-因此它是3个numpy数组,每个数组由0到1个浮点组成,表示通道值 我第一次尝试使用它,因为它似乎是我想要的确切工具,但我不明白颜色映射是如何完成的 颜色数组(文档中的C)似乎映射到默认(或手动指定)颜色映射上,但我无法获取此颜色数组中的值逻辑及其角色。 如果值从网格单元格值映射到默认(或指定)colormap,那么C颜色数组的用途是什么? 在上面的示例中,我手工制作了这个C数组(

我想为每个网格单元分配已经准备好的颜色值。 对于每个RGB通道,我有与XY网格形状相同的颜色值作为标准化的RGB值-因此它是3个numpy数组,每个数组由0到1个浮点组成,表示通道值

我第一次尝试使用它,因为它似乎是我想要的确切工具,但我不明白颜色映射是如何完成的

颜色数组(文档中的C)似乎映射到默认(或手动指定)颜色映射上,但我无法获取此颜色数组中的值逻辑及其角色。
如果值从网格单元格值映射到默认(或指定)colormap,那么C颜色数组的用途是什么?
在上面的示例中,我手工制作了这个C数组(2x1 numpy数组),但不管它的值是多少,我得到的颜色都是相同的,似乎只取决于网格单元的值,而不是这个C数组中的值


因此,我在这里感到困惑,并寻求善意的帮助,这不一定需要解释此pcolor函数,但也许使用matplotlib将颜色值指定给网格网格的正确方法是什么,而不是
pcolor
。(尽管您可以为此使用
pcolor
pcolormesh


相当不错!这是MODIS数据吗?另外,对于连续数据,您可能不需要我在示例中指定的“最近”插值。默认的插值方法是双线性,它更适合您的数据。再次感谢插值技巧,图像用matplotlib缩放,当然是1:1。你是对的-在我看来,你仅仅通过图像的一部分来计算它是令人惊讶的:)Cheers这似乎对
pcolor
不起作用,并返回错误为
ValueError:太多的值需要解包。可能,
pcolor
只接受1D或2D数组作为颜色参数。有没有办法让它适用于
pcolor
import numpy as np
import matplotlib.pyplot as plt

# Make some random data to represent your r, g, b bands.
ny, nx = 2, 3
r, g, b = [np.random.random(ny*nx).reshape((ny, nx)) for _ in range(3)]

c = np.dstack([r,g,b])

plt.imshow(c, interpolation='nearest')
plt.show()