Well, if they were just small round cages, then, at least in anime, pokemon would be as sad inside it as they are when team rocket put then in cages. Ash and co are all enraged when they see that Team rocket is putting pokemon in cages. In anime, pokemon seen to hear whats happening outside, as psyduck and woobuffet come out whenever something interesting is happening.
I go with the little environment theorie.
May be pikachu doesnt like his pokeball because its defective, and put him in a desert, or in a dark cave.