And Mike Minor toughed it out on a day when it was tough to pitch.
Johnson homered twice and Minor hit his second career home run, leading the Atlanta Braves over the Chicago Cubs 11-6 on Saturday.
Johnson and Justin Upton each drove in four runs for the Braves.
Johnson and Minor homered and Upton hit a three-run double as Atlanta scored six times in the fourth inning for a 9-3 lead.
"It's one of those days at Wrigley when you get the ball up in the air and the ball keeps traveling," Johnson said. "Mike battled though. It's a tough place to pitch on days like this. He battled and kept us in the game. We were able to get enough.
Minor (3-5) allowed six runs and 11 hits in six innings, improving to 6-0 in his career against the Cubs.
The Braves won for the second time in seven games. They hit no home runs in their previous six games and one in their last 12 games.
Upton and Justin Heyward had RBI singles in the ninth for Atlanta.
David Carpenter pitched two innings for his third save.
"Today is one of those days we need all the offense we can get because the wind was blowing out, typical Wrigley Field wind blowing out," Braves manager Fredi Gonzalez said. "We never felt comfortable."
Chris Coghlan hit two doubles and drove in three runs for the Cubs, who have lost seven of nine.
Edwin Jackson (5-10) lasted just 3 2/3 innings after giving nine runs, seven hits and three home runs.
"It's just one of those embarrassing, horrendous games," Jackson said. "Flat out, there's no other way to put it. Your team does a great job and battles back, and you continually give up the lead. It's pretty much unacceptable."
The Cubs scored three runs in the fifth to cut the lead to 9-6. One run scored on a passed ball before Coghlan hit a two-run double.
Johnson's second homer of the day and fifth of the season was a two-run shot and made it 5-3 in the fourth. Johnson's third career multihomer game was his first since 2012.
"I'm not trying to hit home runs," Johnson said. "I got the first one pretty good. The second one I think it was just a line drive."
Minor padded the lead with a solo shot. His other home run came in 2013 against the New York Mets.
"I remember both (home runs)," Minor said. "The other one surprised me a little bit because I didn't think I could hit the ball like that. Today, I tried to stay back a little bit more. He threw me, I felt like, the same pitch the first at-bat and I was coming around it. It was one of those days I felt like I was seeing the ball good, got lucky and hit it."
Gonzalez said he was undecided about the order of his rotation after the All-Star break. He said Minor and Alex Wood would be staggered. "It depends on what happens in the next two days, who's healthy and if somebody needs a few extra days," Gonzalez said. ... Braves C Evan Gattis (bulging disk) was scheduled to take part in light drills and batting practice at the Single-A facility in Rome, Georgia, for the second straight day. While encouraged, Gonzalez said no timetable had been set for his return from the disabled list.