[matplotlibで錯視] 7. エビングハウス錯視

その他

はじめに

エビングハウス錯視とは、相対的な大きさに関連する錯視の一種であり、代表的なのは同じ大きさの円がそれぞれ大きな円と小さな円で囲まれている図である。大きな円で囲まれた円は小さく、小さな円で囲まれた円は大きく見える。

コード

コードをダウンロード(.pyファイル) コードをダウンロード(.ipynbファイル)

解説

モジュールのインポート

データの生成

外の円のためのデータを生成する。媒介変数で円の中心の位置を設定している。

左の図の設定

外側の円

xとyはそれぞれ6個あるので、それぞれのx,yでCircleにより円を作成する。
ax1.add_patch(circle)で図中に円を表示できる。

中心の円

軸の設定

ax1.axis(‘off’)で軸を非表示にできる。

右の図の設定

左の図と同様に設定する。中心の円は、Circle((0, 0), 0.15,color=’tab:orange’)であり左の図と同じである。

gridを表示した場合

gridを参考にすれば同じ大きさであることが分かる。

参考

エビングハウス錯視 - Wikipedia
https://matplotlib.org/api/_as_gen/matplotlib.patches.Circle.html#matplotlib.patches.Circle

コメント