MATLAB: Index exceeded matrix dimensions

exceededindex

I am trying to create 12 windroses for each month of a year using data in the workspace (variable but around 720 by 24 tables) and each time I try to run the code below I get the index exceeded error message. I have managed to get the windrose figure for one month but wanted to automate the process with a for loop, suggestions.
nFiles = 12;
for i = 1:nFiles
filename = sprintf('%s_%d', 'Month', i);
Options = {'anglenorth', 0, 'angleeast', 90, 'labels', {'North (0)', 'South (180)', 'East (90)', 'West (270)'}, 'Min_Radius', .05, 'nFreq', 8, 'FreqRound', 3, 'freqlabelangle', 45, 'cMap','invparula' 'vWinds', [0 5 5 10 10 15 15 20 20 25 25 30 30 35 35 40], 'TitleString',{'January';''},'LabLegend','Wind Speed in km/h', 'TitleFontWeight', 'bold', 'LegendType', 2};
[figure_handle, count, Speeds, Directions, Table] = WindRose(filename(:,12) .* 10, filename(:,14), Options);
end

Best Answer

Hi,
[filename = sprintf('%s%d', 'Month', i);]_ makes a string like this: Month_1
Then you have used filename(:,12) and filename(:,14) . It means you want 12th or 14th character in the string that it's not exist. for example Month_1 has 7 characters and filename length is 7. So for 12 and 14 you have the error "Index exceeded matrix dimensions".
Related Question