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

1 view (last 30 days)
笙瑛 深谷
笙瑛 深谷 on 27 Jun 2021
Answered: Atsushi Ueno on 28 Jun 2021
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

Accepted Answer

Atsushi Ueno
Atsushi Ueno on 28 Jun 2021
足りないのは、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を解除する

More Answers (0)

Categories

Find more on 2 次元および 3 次元プロット in Help Center and File Exchange

Products


Release

R2021a

Community Treasure Hunt

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

Start Hunting!