I give nicknames usually based on the pokemon's name,
like I'd name a female Aggron "Ronnie", & a male Pinsir named "Sir Pin".
Sometimes I name them after the charaters they remind me of, like
I named my male Buizel "Tails", because the said fox is also orange & bi-tailed, & I name my female Vaporeon after Krystal from Star Fox.
Here's the name of my Pokemon in my Platinum team:
Gawain (Scizor)
I named him "Gawain", after a Knight of the Round table,
whom was played by Knuckles on "Sonic & the Black Knight",
whom I REALLY named him for, since Knuckles as Gawain is red
& has twin swords.
Wario (Electivire)
I named him Wario because they both are yellow, have a round body,
large, muscular arms & short legs. (Heck, Electivire being a electric type
macthes Wario's mustache...)
Zero (Porygon-Z)
I named it Zero, not after the MegaMan X charater,
but rather the number, as it starts with a "Z" & I feel
a number-based name is perfect for a cyberspace pokemon...
Juan (Vaporeon)
I named him Juan, after the 8th Gym leader on Pokemon Emerald
who uses water pokemon.
Donna (Ryyperior)
I named her Donna, because Rhydon ends with "Don",
& I recall Donna being a actual female name.
Giratina
I don't nickname my legendaries, as they are supposed to be
1-of-a-kind. I may start naming my legendaries too...
If so, I'll name my Giratina "Tina".