Quoted By:
I've done that once for HG, naming my Pokémon after some OCs of mine.
I decided on the basis of "Which character fits this Pokémon the most?". I think they should let you see the Pokémon's nature before deciding on a nickname, though.
In gen VI, thanks to Chesnaught master race, I'm thinking of doing the following:
Chespin - Robotnik
Bunnelby - Grounder
Torchic - Scratch
Panpour - Coconuts
And two other slots I'm still undecided on. I'm going for Bulbasaur as a Kanto starter, but I think I'll box it for the main game.