Index in position 1 is invalid. Array indices must be positive integers or logical values. getting this error command while running this code

1 vue (au cours des 30 derniers jours)
old_obs_1 = plot3(Obs5(1,1), Obs5(1,2), Z(round(Obs5(1,2)),round(Obs5(1,1))),'o','MarkerSize',20, 'MarkerFaceColor','r','MarkerEdgeColor', 'k');
Please help
Thanks in advance

Réponse acceptée

Simon Chan
Simon Chan le 2 Fév 2022
At least the value on Obs5(1,2) is <0.5
Obs5 = [0.5 0.4];
Z=rand(2,3);
old_obs_1 = plot3(Obs5(1,1), Obs5(1,2), Z(round(Obs5(1,2)),round(Obs5(1,1))),'o','MarkerSize',20, 'MarkerFaceColor','r','MarkerEdgeColor', 'k');
Index in position 1 is invalid. Array indices must be positive integers or logical values.
  1 commentaire
JIBIN GEORGE
JIBIN GEORGE le 2 Fév 2022
Yes my previous defenition of the Obs5 = [125 0];
when it changed to Obs5 = [125 10];
works fine
Thank you

Connectez-vous pour commenter.

Plus de réponses (1)

KSSV
KSSV le 2 Fév 2022
This error is simple, you are trying to extract more number of elements than present in the array.
A = rand ; % A is aconstat i.e 1x1 array.
A(1) % no error
ans = 0.6042
A(1,2) % error becasue there is no second element, alse A(2) means the same
Index in position 2 exceeds array bounds. Index must not exceed 1.
Check your variable dimensions. You have used index 2, it seemsthere is no second element.

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by