You may find CylinderSphereLine.lsp, available >here<, a starting point. It's a 3D application, lining the end surfaces and walls of the inside of a cylinder with spheres, but the "floor" part of what it does could be adaptable to your purposes using Circles.
Another option is a Hatch pattern that does what look pretty much like Circles, though they are really polygons of a large number of sides. I made several patterns that do that, all called CirclesTriGrid followed by a descriptive suffix, available >here<. You would want CirclesTriGridOpen. I think the "circles" it makes [really 24-gons] may be a little closer together than in your image -- the space between is equal to the "diameter" of each. See the rest of the topic there, and the comments at the top of the file.
Kent Cooper, AIA