在 Matlab 中,我有两个 Nx3 矩阵 P
和 Q
,每行代表一个点。
我想在矩阵同一行中的点之间绘制线。
下面的代码可以做到这一点:
for i=1:N
plot3( [P(i,1) Q(i,1)], ...
[P(i,2) Q(i,2)], ...
[P(i,3) Q(i,3)] )
end
有没有办法不用for循环来做到这一点?
如果我将点作为向量赋予 plot3
,Matlab 将在 Q(i,:)
和 P(i+1,:)< 之间绘制线条
除了我想要的行之外。
最佳答案
尝试
plot3([P(:, 1) Q(:, 1)]', ...
[P(:, 2) Q(:, 2)]', ...
[P(:, 3) Q(:, 3)]')
如果将矩阵输入 Matlab 绘图函数,则每一列对应于绘制的一条线。
关于matlab - 在Matlab中绘制多条线,无需for循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6137755/