The Conservatives have lost seats in Parliament and no longer enjoy an overall majority, while Labour has exceeded the expectations of pollsters and increased its number of MPs. But this isn't the whole story...

1. The Conservatives won 20 seats

Although it was a bad night for Theresa May's party overall, with 33 MPs ejected from Parliament, it actually won seats elsewhere.

The majority of their gains were in Scotland, where the Conservatives performed well against the SNP, unseating the former SNP leader Alex Salmond in Gordon.

The party also took six seats from Labour, and snatched Clacton from UKIP.

2. Who lost seats to Labour?

Labour's six losses were offset by 36 gains - 28 of which were from the Conservatives and two from the Lib Dems - including Nick Clegg's former seat of Sheffield Hallam.

The party also took six Scottish seats from the SNP.

3. Most of the changes were in Scotland and the north of England

Although the political landscape of Northern Ireland has also shifted dramatically with the UUP and the SDLP losing all of their MPs.

Changed seats All seats Please enable Javascript to view our results map Con

Con Lab

Lab SNP

SNP LD

LD PC

PC UKIP

UKIP Ind

Ind DUP

DUP SDLP

SDLP UUP

UUP SF

SF Green

More maps showing the changes from 2015 to 2017 are here.

4. The SNP saw some huge majorities disappear

The table below shows the largest majorities in the last general election in 2015 that have been overturned.

Nine of the largest 10 previously belonged to the SNP - a 14,000-vote majority won by the party's former spokesperson on social justice, Eilidh Whiteford, in 2015 has been converted into a 4,000-vote majority for the Conservatives.

Constituency (out of 650 so far) Result 2015 Majority 2017 Majority Banff & Buchan CON GAIN FROM SNP 14339 3693 Coatbridge, Chryston & Bellshill LAB GAIN FROM SNP 11501 1586 Ayr, Carrick & Cumnock CON GAIN FROM SNP 11265 2774 Angus CON GAIN FROM SNP 11230 2645 Stirling CON GAIN FROM SNP 10480 148 Ochil & South Perthshire CON GAIN FROM SNP 10168 3359 Rutherglen & Hamilton West LAB GAIN FROM SNP 9975 265 Kirkcaldy & Cowdenbeath LAB GAIN FROM SNP 9974 259 Midlothian LAB GAIN FROM SNP 9859 885 Canterbury LAB GAIN FROM CON 9798 187 Oxford West & Abingdon LD GAIN FROM CON 9582 816 Glasgow North East LAB GAIN FROM SNP 9222 242 Moray CON GAIN FROM SNP 9065 4159 Gordon CON GAIN FROM SNP 8687 2607 Battersea LAB GAIN FROM CON 7938 2416 Kensington LAB GAIN FROM CON 7361 20 Aberdeen South CON GAIN FROM SNP 7230 4752 Aberdeenshire West & Kincardine CON GAIN FROM SNP 7033 7949 East Lothian LAB GAIN FROM SNP 6803 3083 Warwick & Leamington LAB GAIN FROM CON 6606 1206 Reading East LAB GAIN FROM CON 6520 3749 Dumfries & Galloway CON GAIN FROM SNP 6514 5643 Foyle SF GAIN FROM SDLP 6046 169 South Down SF GAIN FROM SDLP 5891 2446 Colne Valley LAB GAIN FROM CON 5378 915 Mansfield CON GAIN FROM LAB 5315 1057 Portsmouth South LAB GAIN FROM CON 5241 1554 Stockton South LAB GAIN FROM CON 5046 888 Bristol North West LAB GAIN FROM CON 4944 4761 High Peak LAB GAIN FROM CON 4894 2322 Stroud LAB GAIN FROM CON 4866 687 Enfield Southgate LAB GAIN FROM CON 4753 4355 Caithness, Sutherland & Easter Ross LD GAIN FROM SNP 3844 2044 Bath LD GAIN FROM CON 3833 5694 Ipswich LAB GAIN FROM CON 3733 831 Renfrewshire East CON GAIN FROM SNP 3718 4712 Crewe & Nantwich LAB GAIN FROM CON 3620 48 Clacton CON GAIN FROM UKIP 3437 15828 Edinburgh West LD GAIN FROM SNP 3210 2988 Ceredigion PC GAIN FROM LD 3067 104 Keighley LAB GAIN FROM CON 3053 249 Leeds North West LAB GAIN FROM LD 2907 4224 Kingston & Surbiton LD GAIN FROM CON 2834 4124 Warrington South LAB GAIN FROM CON 2750 2549 Copeland CON WIN 2564 1695 Stoke-on-Trent South CON GAIN FROM LAB 2539 663 Sheffield Hallam LAB GAIN FROM LD 2353 2125 Middlesbrough South & Cleveland East CON GAIN FROM LAB 2268 1020 Dunbartonshire East LD GAIN FROM SNP 2167 5339 Cardiff North LAB GAIN FROM CON 2137 4174 Twickenham LD GAIN FROM CON 2017 9762 Walsall North CON GAIN FROM LAB 1937 2601 Peterborough LAB GAIN FROM CON 1925 607 Derbyshire North East CON GAIN FROM LAB 1883 2861 Lincoln LAB GAIN FROM CON 1443 1538 Southport CON GAIN FROM LD 1322 2914 Bedford LAB GAIN FROM CON 1097 789 South Antrim DUP GAIN FROM UUP 949 3208 Belfast South DUP GAIN FROM SDLP 906 1996 Weaver Vale LAB GAIN FROM CON 806 3928 Eastbourne LD GAIN FROM CON 733 1609 Brighton Kemptown LAB GAIN FROM CON 690 9868 Fermanagh & South Tyrone SF GAIN FROM UUP 530 875 Plymouth Sutton & Devonport LAB GAIN FROM CON 523 6807 Bury North LAB GAIN FROM CON 378 4375 Berwickshire, Roxburgh & Selkirk CON GAIN FROM SNP 328 11060 Vale of Clwyd LAB GAIN FROM CON 237 2379 Croydon Central LAB GAIN FROM CON 165 5652 Derby North LAB GAIN FROM CON 41 2015 Gower LAB GAIN FROM CON 27 3269