As the year draws to a close, we look at the top five batsmen in cricket in 2012 in all three formats of the game.
Michael Clarke: The Aussie captain played 11 Tests in 2012 and amassed 1595 runs at an average of 106.33. Overall, he slammed five hundreds and three fifties. His highest score was a magnificent 329 not out against the Indians in the New Year Test at Sydney.
Alastair Cook: The English skipper played 15 Tests and scored 1249 runs averaging 48.03 with four hundreds and three fifties. His highest score was 190 against India.
Hashim Amla: The South African featured in 10 Tests and scored 1064 runs at an average of 70.93 with four hundreds and two fifties. His highest score was 311 not out against England at the Oval.
Kevin Pietersen: In 14 Tests, KP made 1053 runs with three hundreds and four fifties at an average of 43.87. His highest was 186 against India.
Jonathan Trott: Another England batsman, Trott made 1005 runs in 15 Tests with two hundreds and six fifties and an average of 38.65. His highest score was 143, also against the Indians.
Kumar Sangakkara: The former Sri Lankan captain was the top scorer in ODIs, with 1184 runs in 31 matches with three hundreds and six fifties at an average of 43.85. His highest score was 133 against India.
Tillakaratne Dilshan: He also played 31 games and scored 1119 runs with four hundreds and three fifties averaging 41.44. His highest score was 160 not out against India.
Virat Kohli: The India number three played 17 games in 2012 and amassed 1026 runs with five hundreds and three fifties at an average of 68.40. His highest was a magnificent 183 against Pakistan.
Dinesh Chandimal: A surprise entry, the Lankan middle-order bat played 30 games and scored 845 runs with seven fifties at an average of 35.20. His highest was 92 not out against South Africa.
David Warner: The Aussie opener played 25 games and registered 840 runs with two hundreds and three fifties averaging exactly 35. His highest score was 163 against Sri Lanka.
Martin Guptill: The New Zealand opener registered 472 runs in 13 games with one hundred and two fifties at an average of 47.20. His highest was 101 not out against South Africa.
Virat Kohli: In14 games, he made 471 runs with four fifties at an average of 39.25. His highest score was 78 not out against Pakistan.
Brendon McCullum: The experienced Kiwi played 15 games and scored 459 runs with one hundred and one fifty at an average of 30.60. His highest score was 123 against Bangladesh.
Shane Watson: The Aussie all-rounder played 11 games and scored 406 runs with four fifties at an average of 40.60. His highest score was 72 against India.
Mohammad Hafeez: The Pakistan skipper played 16 games and scored 398 runs with two fifties at an average of 24.87. His highest score was 61 against India.
--By A Cricket Analyst