给定一个图,例如下图所示的曲线,我想突出显示区间 150 <= x <= 200 中的曲线。我更喜欢简单地用红色而不是蓝色绘制这个区间。
有没有比将我的曲线分成 3 组/3 个连接曲线部分更好的方法来做到这一点?(3 个间隔,第一个为蓝色,第二个为红色,第三个为蓝色)。感谢您的任何提示!
一个简单的例子:
%# plot data
x = linspace(0,2*pi,75);
y = sin(x);
plot(x, y, 'b.')
%# higlight points of interest
idx = (4 <= x & x <= 6);
hold on, plot(x(idx), y(idx), 'r.')
hold off
正确的做法是为 n 个数据点提供一个 n*3 的颜色值矩阵。
C = zeros(size(x,2), 3);
C(x>=150 & x<=200,1) = 1; % red
C(x<150 | x>200,3) = 1; % blue
scatter(x, y, 25, C, 'd', 'filled');