Plotting only specific points using matplotlib's imshow

import numpy as np
import matplotlib.pyplot as plt

N = 101
x = np.linspace(-1,1,N); ones = np.ones_like(x)
coords = np.outer(ones,x) #x coords
coords = np.concatenate([[coords], [coords.T]])
ourShape = np.zeros([N,N])
ourShape[np.square(coords[0,:,:]) + np.square(coords[1,:,:]) <= 1.] = 1.

fig, ax = plt.subplots();
ax.imshow(ourShape)
plt.show()

This plots a circle inscribed in a square. But how do I get python to plot only the blue region, which is part of the square and not the circle? To be clear, I do not want to just turn the circle white; I want it to not plot at all. I tried

ax.imshow(ourShape[ourShape < 1.])

and that produces a TypeError.