Vazquez (10-11) logged a win in his third straight start, holding the Pirates to three hits, walking two and striking out seven.
Donnie Murphy capped the big fifth inning with a two-run double while Greg Dobbs and Gaby Sanchez also had RBI hits in the frame as the Marlins completed a three-game sweep.
Pittsburgh's James McDonald (9-8) was touched for four runs on five hits before being knocked out in the fifth.
Jason Jaramillo went 2-for-2 with an RBI for the Pirates.
Chipotle plans first price increase in 3 years
Putin thinks Obama would save him if he were drowning