我试图在Matlab中绘制一条2D线,其颜色根据我分配给每个点的RGB代码而变化。下面的代码适用于给定的色彩图(定义颜色的'col'值),但我试图更严格地控制颜色分配,以便值在多个图表中始终呈现相同的颜色。
surface([x;x],[y;y],[z;z],[col;col],...
'facecol','no',...
'edgecol','interp',...
'linew',2);
答案 0 :(得分:1)
问题是你如何确定每个点的颜色?定义色彩图很容易(如下所示)。
col=colormap(hot(128)) %% or other colour style like hsv or jet
如果你有一个变量(我们称之为V),每个点都有一个特定值,你希望颜色根据它变化:
首先在colormap中定义极值的值:
min_col=0; %%%can be the minimum of V
max_col=1; %%%can be the maximum of V
然后插入到您的数据
new_col=interp1(linspace(min_col,max_col,length(col)),col, V(:))