茎图中茎的末端的色环取决于值

时间:2011-03-31 16:29:58

标签: matlab

我有一个脚本,使用stem()绘制傅里叶级数。我知道我可以使用stem( , 'fill')填充词尾的圆圈。但是我希望它只填充圆圈,如果幅度为负,或者填充所有这些,但是在具有负幅度的那些上有另一种颜色的外圆。

我尝试在stem()内部使用变量,并使用完整的if-else语句,但都返回了错误。

任何方式都可以做到这一点?

1 个答案:

答案 0 :(得分:4)

您可以在'Marker'属性设置为'none'的情况下从干线图中删除标记。然后使用plotscatter功能在任意位置添加标记。在hold on命令后添加stem,在所有绘图命令后添加hold off

例如:

x = randn(20,1);
stem(x,'Marker','none')
hold on
plot(find(x>0),x(x>0),'ro')
plot(find(x<0),x(x<0),'bx')
hold off