Espinosa’s two-run homer in the fourth put Washington ahead for good at 3-1. He also hit a sacrifice fly in the second as the Nationals won for the fourth time in five games.
“I’ve made some adjustments in the last few days to help me get the bat to the ball quicker,” said Espinosa, who is hitting just .185. “I’m feeling a lot better at the plate.”
Gonzalez (3-2) allowed two runs and five hits in six innings, walking two and striking out five. He had been tagged for 18 runs and 21 hits in his previous four starts, going 1-2 in that span.
“Gio did a great job of keeping us in that game after the tough start,” Johnson said. “He pitched well.”
After Marte homered, the Pirates loaded the bases in the first with none out. Gonzalez escaped the jam by striking out Russell Martin and Michael McKenry and getting Brandon Inge to ground out.
“The Pirates came out hacking and the game was speeding up,” Gonzalez said. “When the game speeds up, you can’t get too aggressive and go head-to-head with their aggressiveness. To his credit, (catcher Wilson) Ramos saw that and had me slow the game down and stay calm.”
Ramos had three hits for the Nationals. Roger Bernandina, who took over for Harper after the ejection, had two hits after entering the game with only one hit all season in 25 at-bats.
Rodriguez (2-2) gave up three runs and six hits, striking out seven and walking one in six innings.
The Pirates pulled within 3-2 in the sixth when Martin hit an RBI double.