Bolton midfielder Andranik Teymourian grabbed two superb second-half goals as Bolton came from behind to beat Wigan in a pulsating local derby.
Andranik Teymourian celebrates the first of his double
The Iranian coolly sidefooted home his first after an exquisite El-Hadji Doiuf pass and he headed a powerful second from a fine Kevin Davies cross.
Emile Heskey put Wigan ahead from close range after some incisive build-up play saw Paul Sharner pull the ball back.
But Nicolas Anelka tapped in the equaliser following good work by Diouf.
The win takes European hopefuls Bolton back into fifth spot in the table and they are five points clear of seventh-placed Tottenham.
Only nine miles separate the sides but both teams were desperate for the points - for very different reasons.
Paul Jewell's Wigan did not look like a struggling side in the opening exchanges.
And the Latics should have taken the lead after three minutes but Ryan Taylor's free-kick was volleyed wide from six yards by Lee McCulloch.
The lively Caleb Folan then blazed over the bar following good work by Antonio Valencia and Heskey also had a shot blocked.
Bolton were struggling to compete and the odd set-piece seemed to be their best hope of a goal.
Their only chance of a lacklustre opening 20 minutes came when home keeper John Filan fumbled a corner under pressure from Abdoulaye Faye and Heskey was forced to clear the danger.
But just as Bolton started to settle, Wigan took a deserved lead.
Valencia dispossessed Tal Ben Haim on the left flank and played the ball into Folan, whose first-time flick allowed Paul Scharner to cross and Heskey bundled the ball home from close range.
Bolton boss Sam Allardyce immediately replaced Ben Haim with Ricardo Gardener to cope with Valencia's pace and the change seemed to do the trick as the visitors drew level six minutes before the interval.
A goalmouth melee led to Matt Jackson blocking Anelka's shot but when the ball was fizzed back into the box from Diouf, Anelka scrambled the ball home from a matter of millimetres.
Diouf then had a glorious chance to give Bolton the lead but when Filan spilled Teymourian's fierce 20-yard effort he could only shoot straight at the Australian keeper.
Bolton's revival continued after the interval and Bolton blew away the Latics in fine style, thanks to Teymourian's composed finishing.
Jussi Jaaskelainen launched a long ball forward to Diouf and he controlled the ball effortlessly before playing in Teymourian, who calmly slid the ball past Filan.
Bolton pushed forward for a third goal and were rewarded when Davies did well on the right and crossed to Teymourian, who powered his header beyond Filan's despairing dive.
McCulloch crashed a spectacular 30-yard effort off the bar but Bolton achieved a deserved win.
Wigan manager Paul Jewell on scoring first but still losing:
"We are the best in the league at doing that.
"I've said it before, but we seemed to be a bit milky, in that, when we come under pressure, we concede a goal.
"I thought we had got over that, but it was back today and now we are most certainly in a dogfight.
"We have to pick ourselves up, dust ourselves down and try to get a result at Aston Villa on Monday."
Bolton boss Sam Allardyce on two-goal midfielder Andranik Teymourian:
"We have found a little diamond who is progressing nicely.
"The clinical finishing he showed today was the difference between the two sides in the end, and they were two great finishes.
For the first, most players would have taken a touch, but he didn't. He hit it first time and it was past the keeper before he could get down.
"Then he popped up at the far post on a late run completely unmarked, and I didn't know he could head the ball, but he showed me then he can do that."
Wigan: Filan, Taylor, Jackson, Hall, Baines, Valencia, Scharner, Skoko (Cotterill 74), McCulloch, Heskey, Folan (Camara 63).
Subs Not Used: Nash, Kilbane, Unsworth.
Goals: Heskey 32.
Bolton: Jaaskelainen, Hunt, Meite, Faye, Ben Haim (Gardner 35), Teymourian, Thompson (Tal 74), Speed, Davies, Anelka (Giannakopoulos 88), Diouf.
Subs Not Used: Al Habsi, Pedersen.
Booked: Thompson, Davies, Jaaskelainen.
Goals: Anelka 44, Teymourian 68, 73.
U Rennie (S Yorkshire).