半径1、中心(0,0​)の円をy>=0で赤​、それ以外を青。if​とforを用いてプロ​ットしたいです。自分​で何十回とやってみた​のですがどうもうまく​いきません。どなたか​ご助力いただけると幸​いです。

for c=0:360
x=cos(deg2rad(c))
y=sin(deg2rad(c))
if y>=0
plot(x,y,'-ro');
else
plot(x,y,'-bx');
end
end

 Réponse acceptée

Atsushi Ueno
Atsushi Ueno le 28 Juin 2021

1 vote

足りないのは、hold onです。
hold onを削除して、forループ内にpauseを置くと、何が起こっていたか理解する事が出来ます。
figure
hold on % 現在のプロット(figure)を保持する
for c=0:360
x=cos(deg2rad(c));
y=sin(deg2rad(c));
if y>=0
plot(x,y,'-ro');
else
plot(x,y,'-bx');
end
pause(0.01);% ウェイトを追加(動きを理解するのに役立ちます)
end
hold off % hold onを解除する

Plus de réponses (0)

Catégories

En savoir plus sur MATLAB dans Centre d'aide et File Exchange

Produits

Version

R2021a

Community Treasure Hunt

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

Start Hunting!