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

1 Ansicht (letzte 30 Tage)
笙瑛 深谷
笙瑛 深谷 am 27 Jun. 2021
Beantwortet: Atsushi Ueno am 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

Akzeptierte Antwort

Atsushi Ueno
Atsushi Ueno am 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を解除する

Weitere Antworten (0)

Kategorien

Mehr zu 2 次元および 3 次元プロット finden Sie in Help Center und File Exchange

Produkte


Version

R2021a

Community Treasure Hunt

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

Start Hunting!