MIAMI -- The temperature is on the rise, and so is Jose Guillen's average.
Guillen has gone 19-for-38 since May 7 to hike his season average from .165 to .245.
"I know the weather has something to do with it," he said. "Early in the season it was really tough weather playing at home. It was like football weather. This is baseball weather."
On a sunny, 91-degree afternoon in the city where he keeps an offseason home, Guillen hit a two-run double in the first inning and a two-run homer in the seventh. The left fielder also threw out a runner at the plate.
Guillen finished with eight RBI in the three-game series, the kind of contribution the Royals envisioned when he signed a $36 million, three-year contract with them in December.
"I know there was a lot of panic early in the season -- what's going on with this guy, getting paid all that money?" Guillen said. "Everything has been coming into place at the right time."
That's true for the entire team. The young Royals won for the sixth time in seven games to climb within one game of .500.
"I'm really, really happy about it," said Zack Greinke, who pitched six innings. "A while ago I was starting to think maybe we weren't as good as I thought we were."
The Royals' nine runs and 14 hits tied season highs. Greinke (5-1) helped with two hits, the most by a Royals pitcher since Steve Busby had three on Sept. 20, 1972.
"Yeah, my dad text-messaged me that," said Greinke, who hiked his lifetime average to .375 (3-for-8). "He was watching the game on TV, probably. He's a big fan."
Florida remained atop the NL East despite finishing the week with only one victory in six games.
"It's definitely nice to know we're still in first place," second baseman Dan Uggla said. "We can pull out of this, trust me."
The Royals built an early 6-0 lead for Greinke, who left after throwing 94 pitches. He gave up three runs, matching the most he has allowed since Aug. 4.
"It ended up working out, so you can't complain too much," Greinke said. "But it definitely wasn't one of the better performances."
The Marlins, last in the major leagues in defense, let two runs score in the third on a throwing error by third baseman Jorge Cantu. Rookie Burke Badenhop (1-3) lasted only three innings and allowed six runs, five earned.
Hanley Ramirez, who signed a $70 million, six-year contract Saturday with Florida, went 1-for-12 in the series with seven strikeouts.
"I think he's putting a lot of pressure on himself right now," Royals manager Trey Hillman said.
Asked about such pressure, Ramirez said, "I'm going to go home and get a dictionary, because I don't know what that word is."
Ramirez ended a streak of 11 consecutive hitless at-bats with a single to start the sixth. He scored on a double by Uggla, and Luis Gonzalez singled with two out, but Guillen threw Uggla out at home to preserve Kansas City's 6-3 lead.
"It takes a lot of pressure off other guys," Hillman said. "As a result, guys stop pressing and they can be themselves. There's a domino effect, no doubt."
- In the second inning, Uggla became the first player this season to attempt to steal against Greinke. Cantu struck out on the pitch and Uggla was thrown out for an inning-ending double play.
- Uggla went 2-for-4 and is batting .397 in his past 18 games.
- Royals pinch-hitter Matt Tupman singled in the ninth in his major-league debut.
- In the postgame clubhouse, the Royals presented closer Joakim Soria with a chocolate cake to celebrate his 24th birthday.