Matplotlib(Python)规范化数据
嗯,我正试图对一些(红外)热成像数据进行标准化,以便稍后显示 然而,我一直坚持规范化,我当然可以手动完成,但我想知道matplotlib代码为什么不起作用,python代码如下所示:Matplotlib(Python)规范化数据,python,matplotlib,normalization,Python,Matplotlib,Normalization,嗯,我正试图对一些(红外)热成像数据进行标准化,以便稍后显示 然而,我一直坚持规范化,我当然可以手动完成,但我想知道matplotlib代码为什么不起作用,python代码如下所示: import numpy as N import matplotlib.colors as colors test2 = N.array([100, 10, 95]) norm = colors.Normalize(0,100) for pix in N.nditer(test2, op_flags=['read
import numpy as N
import matplotlib.colors as colors
test2 = N.array([100, 10, 95])
norm = colors.Normalize(0,100)
for pix in N.nditer(test2, op_flags=['readwrite']):
val = (norm.process_value(pix)[0])
print (val)
img = norm.process_value(test2)[0]
print(img)
现在我希望VAL或img显示正确的处理数据。根据matplotlib.colors.Normalize.process\u值实际应作为参数获取的内容而定
但在任何情况下:这两个函数都不规范化,只返回原始函数。。根本不在[0,1]
间隔上 这里可能有点欺骗:process\u value
是一个只用于预处理(和静态)的函数。下面这句话描述了实际用法:
一个类,当被调用时,它可以将数据规范化为[0.0,1.0]
间隔时间
因此,在调用该类时会发生规范化:
import numpy as N
import matplotlib.colors as colors
test2 = N.array([100, 10, 95])
norm = colors.Normalize(0,100)
for pix in N.nditer(test2, op_flags=['readwrite']):
val = (norm(pix))
print (val)
img = norm(test2)
print(img)
输出:
1.0
0.1
0.95
[ 1. 0.1 0.95]
你为什么把电话放在括号里?我尽量不改变问题的代码。括号在那里,所以我把它们留下了