我在图像上绘制多色线条,线条的颜色应该代表一个给定的参数,该参数大约在 -1 和 3 之间变化。
以下代码部分是构建这些行的部分:
x = self._tprun.r[0,p,::100] # x coordinate
y = self._tprun.r[1,p,::100] # y coordinate
points = np.array([x, y]).T.reshape(-1, 1, 2)
segments = np.concatenate([points[:-1], points[1:]], axis=1)
# 'color' is the parameter that will color the line
vmin = self._color[p,:].min()
vmax = self._color[p,:].max()
lc = LineCollection(segments,
cmap=plt.get_cmap('jet'),
norm=plt.Normalize(vmin=vmin,vmax=vmax))
lc.set_array(self._color[p,:])
lc.set_linewidth(1)
self._ax.add_collection(lc)
此代码在“p”的循环内,因此它将在数组“x”和“y”给定的位置创建几行,并且颜色应由“self._color [p”的值给出: ]'。
正如我所说,'_color[p,:]' 大致在 -1 和 3 之间变化。下面是一个示例,说明 '_color[p,:]' 可能是什么:
我的问题是,创建的线条看起来没有太大的颜色变化,它们看起来都是单色的深蓝色,而 _color[p,:] 变化很大,我要求标准化采用其最小/最大值。
这是这样一条线的一个例子(看看振荡的深蓝色线,其他黑线是另一个值的轮廓):
这些功能的工作方式有什么我遗漏的吗?