neu*_*ker 5 arrays iteration matlab loops multidimensional-array
我试图通过一个固定大小的3d数组迭代,以绘制第三个矢量维度,如下所示:
%respo is a 3D array of fixed size defined above
for ii = 1:size(respo,1)
for jj = 1:size(respo,2)
plot(squeeze(respo(ii,jj,1:8)))
end
end
Run Code Online (Sandbox Code Playgroud)
有没有更好的方法来做到这一点,而不是通过2级for循环,精确指向每次迭代时绘制的向量?
我得到的是MATLAB中每个数组都有一个线性索引,但我很难想出一种可以避免双循环的方法.
plot应用于矩阵会绘制该矩阵的列。因此:重新排列维度,使第三个维度成为新的第一个维度,其他维度合并到新的第二个维度中,然后调用plot
plot(reshape(permute(respo, [3 1 2]), size(respo,3), []))
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
759 次 |
| 最近记录: |