Ich versuche, einen feste Größe 3D-Array, um die dritte Dimension Vektor so plotten Trog iterieren:Bietet MATLAB eine elegantere Möglichkeit, 3D-Arrays zu durchlaufen, um Vektoren der 3. Dimension zu erhalten?
%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
Gibt es einen besseren Weg, dies als mit dem Zeigen genau für Schleife durch 2-Ebene zu tun, um der Vektor bei jeder Iteration aufgetragen?
Ich bekomme dort eine lineare Indizierung für jedes Array in MATLAB, aber ich habe Mühe, mit einem Weg zu kommen, der aus dem Doppel-Looping spart.
Heutzutage ist es nicht mehr wichtig Schleifen zu vermeiden um jeden Preis. Vor allem, wenn der Code klar lesbar ist, würde ich ihn behalten. – bdecaf
Ich muss sagen, ich fand beide Antworten und alle Kommentare nützlich, also danke euch! Das One-Liner von @ luis-mendo ist jedoch das, das ich verwendet habe, da es die MATLAB-Funktionen in dem Maße erleichtert, in dem sie am meisten entwickelt sind. –