matlab错误:Subscript indices must either be real positive integers or logicals.

Subscript indices must either be real positive integers or logicals.

Error in m5 (line 8)
axis([5,10,0.5,1.5])

matlab错误:Subscript indices must either be real positive integers or logicals,是代码输入错误造成的,解决方法如下:

1、首先打开自己电脑桌面上找到matlab程序,鼠标双击或者右击打开桌面上matlab软件,让其运行起来。

2、首先创建新的脚本,点击matlab左上角新建脚本命令,这样做的好处也便于程序的保存。

3、在新建脚本命令输入窗口输入程序>>clear all;,注意书写的方式:全英文状态下输入符号,关闭所有正在运行的matlab程序。

4、元素与子数组的寻访与赋值,一维数组元素与子数组的寻访与赋值。

5、最后可以修改指定数组元素的值,一次可以修改多个数组元素的值,要修改的数组元素的个数应与送入数组的元素个数相同。

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-05-22

错误意思是必须使用正整数或逻辑数组作为索引,出错行是axis(...),显然题主本意并不是把[5,10,0.5,1.5]作为索引使用,此处为matlab运行时产生的误解,要排除此问题,建议使用如下方法:

    检查m5文件中的代码,应该是把axis作为变量赋值了,也可以在工作区用exist axis检查一下;

    如果有赋值(或exist axis显示为1),建议仔细检查并改为其他变量名,如果没有,可能是其他文件中使用过,建议先clear axis;

    对于变量的命名尽量遵循命名规则,有不确定的可以使用exist函数检查,显示为0时则确保可以使用(可以用doc exist查看该函数的使用方法);

第2个回答  2013-05-22
当你引用矩阵或数组中的元素时,比如在循环中用了A(i,j)时,i或j的数值出现了负值或者零值,抑或其他不是正整数的值。仔细检查下作为矩阵A的索引的i或j的取值范围。追问

没有用到下标,而且去掉axis([5,10,0.5,1.5])就可以正常显示,加上就会出现错误。

追答

axis([5,10,0.5,1.5])本身没有错误,只能是系统出了问题或者别的原因,建议重启下matlab程序或者将文件名改一下试试,比如改为test5.m。

相似回答