Everyone has his own reasons, but to me the answer is simple.
Little hatch back in city; easy to park, easy to reverse & easy to drive etc. Most importantly, scratch to small car = heart break..... Scratch to big (and new) car = Heart attack!
Also in a country where people have calcium deficiency in bones and can't even stand without taking support from a nearby car in the parking, it is better to have small car.
Some morons even sit on bonnet or trunk......
Annoying motorcyclists is whole another story........
It's not about the fuel economy imo.