我在Matlab中有一个2D绘图,我想指定每个点的RGB值以改变颜色

时间:2014-09-20 14:12:23

标签: matlab graph colors 2d

我试图在Matlab中绘制一条2D线,其颜色根据我分配给每个点的RGB代码而变化。下面的代码适用于给定的色彩图(定义颜色的'col'值),但我试图更严格地控​​制颜色分配,以便值在多个图表中始终呈现相同的颜色。

surface([x;x],[y;y],[z;z],[col;col],...
    'facecol','no',...
    'edgecol','interp',...
    'linew',2);

1 个答案:

答案 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(:))