按顺序绘制散乱数据(matlab)

时间:2014-03-24 21:35:33

标签: matlab plot

我想要绘制一些分散的数据。但该图的线不符合散乱数据的趋势。

A=[1.3476 0.7015 0.2449 0.3402];
B=[0.1 0.2 0.3 0.3];

plot(A,B)
figure
scatter(A,B,'marker','x')

A和B向量仅包含我拥有的少量数据点。

如图所示,图(A,B)中的线不遵循正确的顺序。

当我们使用分散命令时,我需要一条从左到右穿过点的线。图中显示。

谢谢!

2 个答案:

答案 0 :(得分:5)

如果我理解正确:排序A并对B应用相同的排序:

[sA, iA] = sort(A);
sB = B(iA);
plot(sA,sB)

答案 1 :(得分:0)

我认为通过执行两个向量的并行重新排序更容易看到代码的正确性。我通常会使用以下内容:

[~, ixsSort] = sort(A);
plot(  A(ixsSort), B(ixsSort)  )

(是的,这是对现有响应的一个小的风格变化。但是,矿石排序的对称性帮助我避免了复杂索引操作中的错误。)