MATLAB - 颜色编码图

时间:2012-03-08 19:18:43

标签: matlab plot

如何指定类似的内容:如果绘制的值是< 10,颜色为红色,如果是> 20颜色为蓝色,如果它是在颜色之间它是黑色的吗?

3 个答案:

答案 0 :(得分:3)

简单示例:

x=1:0.1:30;
y=x;

hold on
plot(x(y<10), y(y<10),'o','color','red');
plot(x(y>20),y(y>20),'o','color','blue');

y(y <10)是logical indexing,并且是关键。

答案 1 :(得分:0)

如果您正在绘制曲面,则以下内容将起作用。

set(gca, 'CLim', [0 30])
set(gcf, 'Colormap', [1 0 0; 0 0 0; 0 0 1])

答案 2 :(得分:0)

如果您正在绘制一条线,那么我建议您使用MATLAB Central中的color_line。您仍然需要设置所需的颜色贴图,但使用此方法您将绘制一条根据值着色的线。

使用逻辑索引分隔数据的一个缺点是,当您绘制数据时,它们被视为单独的数据块。因此,许多绘图工具只能处理一组数据,设置图例,每组数据都会得到一个项目。

使用color_line,它将是不同的颜色,但它将被视为一个数据项。