matlab - 在Matlab中绘制多条线,无需for循环

标签 matlab

在 Matlab 中,我有两个 Nx3 矩阵 PQ,每行代表一个点。 我想在矩阵同一行中的点之间绘制线。

下面的代码可以做到这一点:

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/

相关文章:

matlab - 使用 HG2-Update 和 'painters' 渲染器将图形导出为 .pdf 格式的矢量图形无法正常工作

matlab - fiddle 图 Matlab

performance - Pentago 董事会的获胜者

matlab - 在 .csv 上使用 readtable,并在最后一个单元格后添加垃圾文本

python - Python 中的特征值

arrays - 如何找到给定数组 A1 的索引,*任何* 其值实际上等同于第二个数组 A2 的 *任何* 值?

Python3,将MATLAB数组代码转换为Python版本?

matlab - 如何在Matlab中的文件夹中查找.xlsx文件?

matlab - 将 for 循环编写为 boolean 运算

python - Cython 会加速 erf() 计算吗?