n, radii = 50, [.7, .95] theta = np.linspace(0, 2*np.pi, n, endpoint=True) xs = np.outer(radii, np.cos(theta)) ys = np.outer(radii, np.sin(theta)) xs[1,:] = xs[1,::-1] ys[1,:] = ys[1,::-1] ax = plt.subplot(111, aspect='equal') ax.fill(np.ravel(xs), np.ravel(ys)) plt.show()