DENVER -- Josh Johnson described his pregame warmup for Saturday night's start against the Colorado Rockies as "terrible," struggling with his control and grip. Still, he refused to worry about the problematic bullpen session once he began throwing pitches that counted.
"Because," Johnson said, "sometimes you throw terrible out there, and all of sudden you're lights out in the game."
The Rockies will attest to that.
Johnson pitched eight innings of seven-hit ball to lead the Marlins past the Rockies 3-1 on a chilly night at Coors Field.
"He has so many weapons," Rockies manager Clint Hurdle said. "He threw 70 to 75 percent fastballs. He had a good command of it, and had an effective slider and a handful of changeups."
Johnson (3-0) won his sixth straight decision, dating back to Sept. 13. He has 10 wins in his last 11 decisions since coming back last July from Tommy John surgery.
Johnson said he believes he's a better pitcher now than before the surgery, in part because the year off allowed him to refine his fundamentals during the dozens of practice sessions he threw in the course of his rehabilitation.
"I just think my mechanics are a little more sound," he said. "You work on so much after the surgery. You throw 40-50 bullpens. That's all you do for two or three months. It's pretty annoying but it definitely helps you out in the long run, a blessing in disguise."
Matt Lindstrom got the final three outs for his sixth save in eight chances.
Jorge De La Rosa (0-3) was almost as tough on Marlins' hitters, striking out a career-high 12 in eight innings. He allowed four hits and walked one but remained winless in six starts this season despite retiring the last nine batters he faced.
"J.J. was outstanding, to get through that lineup like he did, but you have to give De La Rosa credit. He was good too," Marlins manager Fredi Gonzalez said of the two starting pitchers.
Said De La Rosa, "It's the way it's been for this team this year. I pitched well, but it's a loss. None of us are happy with losing."
The Marlins gave Johnson, who fanned five and walked none, a lead to work with in the first inning. Hanley Ramirez, who collected three more hits to push his two-game total to seven, doubled and scored when Jorge Cantu followed with a single to left.
Ramirez singled to drive in the Marlins' second run after Dan Uggla tripled to the warning track in center leading off the fourth. The hot-hitting Marlins shortstop extended his hitting streak to seven games during which he has batted .555 with four home runs and six RBI.
Ramirez has a simple explanation for his surge.
"I'm seeing the ball well, being patient and swinging at strikes," he said.
Johnson said Ramirez has been "amazing."
"He's what makes us go," Johnson said. "He's spraying the ball all over the field. He's impressive to watch."
Johnson's sinking fastball was as impressive as Ramirez's bat. It was so effective the Marlins' outfield didn't record a putout until the seventh when Ian Stewart's fly ball was caught by left fielder Brett Carroll. Colorado finally broke through for a run in the eighth when pinch-hitter Dexter Fowler and Seth Smith hit consecutive singles and Fowler scored on Troy Tulowitzki's groundout.
The Marlins won their second straight after a stretch in which they had lost six of seven. Colorado (11-18) lost its third straight in falling to a season-low seven games below .500.
Cantu has driven in at least one run in nine of his last 15 games. ... Colorado LHP Franklin Morales, on the 15-day disabled list with a shoulder strain, threw a pain-free bullpen session prior to the game, manager Clint Hurdle said. ... De La Rosa's strikeout total tied for third-highest in Rockies history. ... 1B Todd Helton went 0-for-4, snapping an 11-game hitting streak that was the longest by a Rockie this season. ... Marlins relievers have combined for 16 consecutive scoreless innings over their last five games. ... Cody Ross' RBI single in the ninth produced the Marlins' final run.