円を描く

小さな正方形を並べて、中心からの距離に応じて色分けする。

  • 一辺が0.02の正方形
  • 40×40個格子状に並べる。
  • 正方形の中心位置と(0.48, 0.5)との距離が、0.2より小さい場合色づけする。

描画は、Matplotlibで行う。コードは以下の通り。

#!/bin/env python

import matplotlib.pyplot as plt
import matplotlib.patches as patches

lmin = 0.08
bmax = 0.90

width = 0.02
height = 0.02
xcntr = 0.48
ycntr = 0.5

fig = plt.figure()
ax = fig.add_axes([0,0,1,1])

for i in xrange(40):
    for j in xrange(40):
        bottom = bmax -i*height
        left = lmin + j*width
        x = left + 0.01
        y = bottom - 0.01
        rr = (x-xcntr)**2 + (y-ycntr)**2
        if rr <= 0.04:
            fill = True
        else:
            fill = False
        p = patches.Rectangle(
            (left, bottom), width, height,
             fill=fill)
        ax.add_patch(p)

fig.savefig('aaa.png')
plt.show()

結果として表示される絵。