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

1 Ansicht (letzte 30 Tage)
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

Akzeptierte Antwort

Simon Chan
Simon Chan am 2 Feb. 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.

Weitere Antworten (1)

KSSV
KSSV am 2 Feb. 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