[英]MATLAB: Permute and reshape a N x 4 array into a 2 x 2 x N array
[英]Reshape MxN cell array to 1x(M*N) cell array MATLAB
我正在嘗試為圖中的圖例標題制作一個單元格數組。 該圖重復了不同頻率和3個不同傳感器的實驗。 我需要為每個不同的傳感器和頻率使用不同的顏色。 因此,在以下具有兩個頻率的示例中,我最終得到一個3x2單元陣列,在該陣列中,我需要一維陣列以用作圖例(6x1),但我不知道如何實現這一點。
titles = {'Radial Sensor';'Axial Sensor';'Azimuthal Sensor'};
for ii=1:3
for jj = 1:num_freq
legtitles{ii,jj} = [titles{ii},' ',num2str(freq(jj)),' Hz'];
end
end
答:
'Radial Sensor 15 Hz' 'Radial Sensor 60 Hz'
'Axial Sensor 15 Hz' 'Axial Sensor 60 Hz'
'Azimuthal Sensor 15 Hz' 'Azimuthal Sensor 60 Hz'
因此,我需要將第二行和第三行連接到第一行的末尾。
謝謝!
您可以重塑最終的字幕:
legtitles = reshape(legtitles',1,[]);
或將您的代碼重寫為:
legtitles = {}
for ...
for ...
legtitles{end+1} = ...
要將所有行連接為一行:如果有
legtitles = {'Radial Sensor 15 Hz' 'Radial Sensor 60 Hz';
'Axial Sensor 15 Hz' 'Axial Sensor 60 Hz';
'Azimuthal Sensor 15 Hz' 'Azimuthal Sensor 60 Hz'};
只是使用
legtitles = legtitles.';
legtitles = legtitles(:).';
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.