gpt4 book ai didi

python - 如何使用 matplotlib 将 RGB 颜色值分配给网格网格

转载 作者:行者123 更新时间:2023-12-03 21:28:11 24 4
gpt4 key购买 nike

请考虑这个简化的片段:

import numpy as np

x = np.arange(3)
y = np.arange(2)

X, Y = np.meshgrid(x,y)

我想为每个网格单元分配已经准备好的颜色值。
对于每个 RGB channel ,我都有与 XY 网格形状相同的颜色值作为归一化 RGB 值 - 所以它是 3 个 numpy 数组,每个数组由 0 到 1 个浮点数组成,代表 channel 值

我第一次尝试使用 matplotlib.pyplot.pcolor因为它似乎是我想要的精确工具,但我无法理解颜色映射是如何完成的。

似乎颜色数组(文档中的 C)映射到默认(或手动分配)颜色图上,但我无法获得此颜色数组中值的逻辑及其作用。
如果值从网格单元格值映射到默认(或分配)颜色图上,那么 C 颜色数组的目的是什么?
我为上面的例子手工制作了这个 C 数组(2x1 numpy 数组),但无论它的值如何,我都会得到相同的颜色,这些颜色似乎只取决于网格单元格值而不是这个 C 数组中的值。

所以我在这里很困惑并寻求帮助,这不一定需要解释这个 pcolor 函数,但也许使用 matplotlib 将颜色值分配给网格网格的正确方法是什么

最佳答案

你要imshow而不是 pcolor . (尽管您可以使用 pcolorpcolormesh 来实现这一点。)

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()

enter image description here

关于python - 如何使用 matplotlib 将 RGB 颜色值分配给网格网格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8145791/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com