我有一个矩阵,其中一些值-1
表明存在错误。通常我只会ylim([0 100])
在我的图表中不显示这些值,但是当使用折线图时,连接仍然会下降到该点。我想要一个由线条组成的图表,而不是散点图。有没有一种简单的方法可以在绘制一条线时忽略负值,而在 MATLAB 中使用 plot 函数时只连接正值?
我编写了一个行为类似的小示例程序,但我使用的方式似乎有点“太复杂”,我想知道是否有更简单的方法来实现这一点。当我将值放入时它工作正常NaN
,现在x
和y
值是相同的数量。但是,从向量中删除或排序值将导致不同数量的x
和y
值。
我希望得到修改或标志或其他东西。
x = 2*rand(10) - rand(10)
xx = 10:10:100;
figure;
for i=1:length(x)
for j=1:length(x(i,:))
if x(i,j) < 0
x(i,j) = NaN;
end
end
end
plot(xx,x)
请注意,这只是一个示例,整个代码太大,无法在此处发布。
当具有不对应的值x
时(以便绘图函数简单地使用1,2,3...
等对应的y
值),这可以通过使用来实现
plot(x(x>0))
在这种情况下,对应的值是不同的,在实际代码中它们是测量数据,这里我简单地使用第 10 步进行简化。
x = 2*rand(10) - rand(10)
xx = 10:10:100;
plot(xx,x(x>0))
上面的代码将出现错误消息“向量必须是相同的长度”。