0

我想绘制以下内容

y=linspace(0,D,100)

temp=y^2;

plot(y,temp);

我收到一个错误y^2,它说矩阵应该是正方形的。

有没有另一种方法来绘制。

4

2 回答 2

8

由于情节,您没有收到该错误。你得到它是因为

temp=y^2

相反,您应该使用

temp=y.^2

^表示矩阵功率。.^是元素的力量。您可以在此处找到有关 MATLAB 运算符的更多信息。

假设您有一个 3x3 矩阵,magic(3)。

A=magic(3)
A = 
     8     1     6
     3     5     7
     4     9     2

这是矩阵 A 的平方(如 Dan 建议的那样,它是 A*A):

A^2
ans =

    91    67    67
    67    91    67
    67    67    91

这是包含 A 元素平方的矩阵:

A.^2
ans =
    64     1    36
     9    25    49
    16    81     4
于 2013-04-05T07:24:27.403 回答
0

作为上述答案的替代方案,您可以考虑以下情况:

A = magic(3);

temp = bsxfun(@times,A,A);

它检索相同的结果

temp = A.^2;

操作员.将按元素应用您的正方形。bsxfun完全一样。

我希望这有帮助。

于 2013-04-05T09:57:58.167 回答