Colorado has lost just once in its last 15 games and has a 16-5 record since Jim Tracy replaced Clint Hurdle as manager May 29. The Rockies moved above the .500 mark for the first time since April 11.
Jason Marquis (9-4) went 8 2/3 innings while giving up three runs on eight hits. Pittsburgh scored twice in the ninth, prompting Tracy to bring in Alan Embree to retire the final batter in a non-save situation.
Hawpe's homer gave Colorado a 6-0 lead. He also had an RBI double in the third and the Rockies got a solo homer from Troy Tulowitzki.
The loss went to Ross Ohlendorf (6-6), who surrendered six runs on nine hits in five innings.
The Pirates have dropped three of four.
Kim Kardashian, Kanye West reportedly set wedding date
Boston schools pull out free condoms over wrapping complaints