1

给定一个图,例如下图所示的曲线,我想突出显示区间 150 <= x <= 200 中的曲线。我更喜欢简单地用红色而不是蓝色绘制这个区间。

有没有比将我的曲线分成 3 组/3 个连接曲线部分更好的方法来做到这一点?(3 个间隔,第一个为蓝色,第二个为红色,第三个为蓝色)。感谢您的任何提示!曲线

4

2 回答 2

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

截屏

于 2012-06-23T21:51:06.197 回答
1

正确的做法是为 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');
于 2012-06-23T19:28:30.297 回答