Index exceeds matrix dimensions

2 visualizzazioni (ultimi 30 giorni)
%SET UP USEFUL VARIABLES
NumControls = 2; %number of control experimetns with no grating
dt = 1; %spacing between samples time point [ms]
t_On = 0; %time stimulus turns on [ms]
t_Move = 500; %time stimulus begins moving [ms]
t_Off = 2500; %time stimulus turns off [ms]
NumAngles = size(d, 1) - NumControls; %number of angles tested, equally spaced
NumTimePoints = size(d, 2); %number of time points; time was sampled evert 1 ms
NumTrials = size(d, 2); %number of trials performed at each angle
t_vect=t_On:dt:(NumTimePoints-1)*dt; %time vector for each trial
ThisOrientation = 10; %element index of orientation we are currently analyzing
%PLOT RASTERS FOR ONE PARTICULAR ANGLE
figure(1)
for trial=1:NumTrials
plot(t_vect,trial*d(ThisOrientation,:,trial),'+')
hold on
end
The error hows index exceeds matrix dimensions on the line plot(t_vect,trial*d(ThisOrientation,:,trial),'+')
Tried to figure out myself by browsing all the same error but can't find any. Can anyone please help me since I might be overlooked?
my data size is 4x15x30 double. Thanks a lot!
  1 Commento
KSSV
KSSV il 13 Ago 2018
d(ThisOrientation,:,trial)
The above extracts, ThisOrientatoion row from the 3d matrix trial. YOur ThisOrientation is 15. But your d has only four rows. So the error.

Accedi per commentare.

Risposta accettata

KSSV
KSSV il 13 Ago 2018
Your ThisOrientation should be less then or equal to the number of rows in d.
ThisOrientation = 4 ; % it should be less then or equal to 4

Più risposte (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by