error in a loop

1 回表示 (過去 30 日間)
Kugen Raj
Kugen Raj 2012 年 3 月 20 日
for n =1:N
for radius = 1:R
% Random x & y numbers.
theta = rand(1,n)*(2*pi);
r = sqrt(rand(1,n))*radius;
end
x(n)= x1 + r.*cos(theta);
y(n)= y1 + r.*sin(theta);
end
plot(x,y,'.')
i am creating a random plot inside a circle using for command. i am having an error:
??? In an assignment A(I) = B, the number of elements in B and
I must be the same.
Error in ==> Q11 at 53
x(n)= x1 + r.*cos(theta);
how can i overcome this?
  1 件のコメント
Wayne King
Wayne King 2012 年 3 月 20 日
you do not show us what x1 and y1 are.

サインインしてコメントする。

採用された回答

Daniel Shub
Daniel Shub 2012 年 3 月 20 日
Just like the error says the number of elements in B and in I must be the same. For you, B is
x1+r.*cos(theta)
with the number of elements being equal to the number of elements in r and I is
n
with 1 element.
Are you sure you want
theta = rand(1,n)*(2*pi);
r = sqrt(rand(1,n))*radius;
and not
theta = rand*(2*pi);
r = sqrt(rand)*radius;

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeScatter Plots についてさらに検索

タグ

タグが未入力です。

製品

Community Treasure Hunt

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

Start Hunting!

Translated by