MATLAB矩阵运算

MATLAB矩阵运算,matlab,Matlab,我有大约3000行(改变)和3列矩阵。 我有行数和列数。 我正在尝试绘制图表: x=1:3000; 绘图(矩阵(x,1)) 是否有任何方法可以将所有行包含在绘图指令本身中,以便删除“x=1:3000” 另外,我想将矩阵的第1列(有3000行)划分为另一个矩阵(有3列,每列有1000行)。对此有什么具体说明吗? 我已经为此做了for循环,然后我将在新数组中单独放置元素。但这需要很长时间 关于打印问题,使用冒号操作符将打印所需列的所有行: plot(matrix(:,1)); 编辑:您提到您是初学

我有大约3000行(改变)和3列矩阵。 我有行数和列数。 我正在尝试绘制图表:

x=1:3000; 绘图(矩阵(x,1))

是否有任何方法可以将所有行包含在绘图指令本身中,以便删除“x=1:3000”

另外,我想将矩阵的第1列(有3000行)划分为另一个矩阵(有3列,每列有1000行)。对此有什么具体说明吗?
我已经为此做了for循环,然后我将在新数组中单独放置元素。但这需要很长时间

关于打印问题,使用冒号操作符将打印所需列的所有行:

plot(matrix(:,1));
编辑:您提到您是初学者。如果您以前没有见过像这样使用冒号运算符,那么当索引到矩阵中时,冒号运算符本身实际上意味着“全部”\uuuuu,如果在第一个位置,则表示“所有行”,如果在第二个位置,则表示“所有列”

至于第二个问题,即如何将一列拆分为一个包含多列的新矩阵,可以使用
restrape()
函数,该函数将对输入矩阵进行整形,并对许多输出行和列进行整形。例如,要将
矩阵
的第一列拆分为3列并放入
新矩阵
,请使用以下命令:

newMatrix = reshape(matrix(:,1),[],3);

请注意,上面的代码在第二个参数(行数参数)中使用了
[]
,表示“自动确定行数”。这是根据列数自动确定的,在第三个参数中定义为3。整形函数要求输出行*输出列的数量等于输入行*输入列。因此,在上述情况下,只有当起始矩阵的行数可被3整除时,这才有效

为什么不
plot(x)
plot(x(:,1))
plot(x(1:1000))
使用
/
运算符分割向量。在Matlab中,在循环中逐元素执行操作是一种非常低效的方法。您好,您能再给我解释一下吗?我是初学者。如果你觉得我的答案很有帮助,如果你能接受我的答案,我将不胜感激。(我的答案左边应该有一个小复选标记,你可以点击,我说这是因为我认为你是新的,我不是故意居高临下)。你可以使用
newMatrix=reformate(矩阵(:,1),[],3)让
reforme
自动确定行数