2019年7月22日月曜日

 今だにGrapherではできた

1 > abs(x - y)

 のグラフは描けないけれど、そもそも円はどうやって描くのだろう。
 Grapherなら

 であっさり描けた。円。
 ところがgnuplot的にも簡単ではないのか、三角関数を使う方法しか、見当たらない。ちなみに

plot2d(sqrt(2^2-x^2),[x,-5,5],[y,-5,5],same_xy)$

 では半円になってしまった。

 いろいろ調べてみたらparametricを使えば、いいらしい。三角関数を使うやり方だけど。
 で、最終的にinfoに書かれていたのを発見して脱力する。それを元に描く。

plot2d([[parametric, cos(t), sin(t), [t,0,2*%pi]]],same_xy)$

 ここからおれが得るべき教訓は、まずinfoを見ろ、だな。

 三角関数を使わないのなら……半円にはなるわけだから……。
 solve()してみる。

(%i56) solve(1=sqrt(x2+y2),y);

 ということは

plot2d([sqrt(2^2-x^2),-sqrt(2^2-x^2)],[x,-5,5],[y,-5,5],same_xy)$

 で、どうよ。

 まぁ、こんなもんか。

 と思っていたのだけど、implicit_plotというパッケージを使えば、いちおう描けるみたいだ。

(%i102) load(implicit_plot)$

(%i103) implicit_plot(sqrt(x^2 + y^2) = 2, [x, -5, 5], [y, -5, 5],same_xy)$

(%i104)