Looking at the Nats roster there's no way anyone expected they would be tied for 4th in batting average considering what their payroll is. There's not one hitter on the Nats who's even considered close to a star.
Their batting averages are higher than teams who have spent big bucks on hitters such as the Phillies, Padres, Yankees, Dodgers etc. Nobody's going to make the Nats hitters hit what they're not capable of, but Coles is doing a better job with what he has than Long has with the Phillies. Despite all the money spent on stars the Phillies are tied for 20th in runs scored and the Nats are just behind them. They're also ahead of the Padres, another team who has spent big bucks on hitters.