I think the simplest answer is that we put panels wherever it's easiest. With no existing infrastructure in a random field it takes more effort to get the panels to function, compared to mounting on a roof and wiring in to an existing grid. The upfront cost has always been a barrier to entry, so higher costs turn the average consumer away.