如何使用 matplotlib.pyplot.imshow 更改特定位置的颜色?
How to change specific position's color with matplotlib.pyplot.imshow?
我有一个numpy数组,我用下面的代码画了一个简单的图
import numpy as np
from matplotlib import pyplot as plt
plt.show(image, cmap='gray')
我还有一个包含图像的几个位置的列表,我想在同一张图片上更改这些位置的颜色。
例如,我有另一个这样的列表:
pos = [(0,1),(3,6)...]
我想根据这个改变像素的颜色。对于其他像素,它们保持不变。
我该怎么做?
如果您不介意复制或修改图像,您可以访问数组中的像素值:
import numpy as np
image = np.eye(10)
pos = [(0,1),(3,6)]
values_to_set = [125,255]
for p, val in zip(pos, values_to_set):
image[p] = val
我有一个numpy数组,我用下面的代码画了一个简单的图
import numpy as np
from matplotlib import pyplot as plt
plt.show(image, cmap='gray')
我还有一个包含图像的几个位置的列表,我想在同一张图片上更改这些位置的颜色。 例如,我有另一个这样的列表:
pos = [(0,1),(3,6)...]
我想根据这个改变像素的颜色。对于其他像素,它们保持不变。 我该怎么做?
如果您不介意复制或修改图像,您可以访问数组中的像素值:
import numpy as np
image = np.eye(10)
pos = [(0,1),(3,6)]
values_to_set = [125,255]
for p, val in zip(pos, values_to_set):
image[p] = val