Image copyright Getty Images

Rather than producing a "strong and stable" government, Theresa May's election gamble has created uncertainty. So, what can we learn?

There was a Brexit effect - but not the one Theresa May wanted

Areas where most people voted Remain swung very differently from those where most voted Leave.

On the one hand, the Conservatives often secured a swing to themselves in constituencies where the Leave vote was highest.

These were nearly all places where UKIP performed best in 2015 - and so were the areas where there were most UKIP votes for the Conservatives to snatch away.

Leave seats with clear swings to the Conservatives included Boston and Skegness where there was a 6% swing to the Conservatives and Bolsover where there was as much as an 8% swing.

But seats which voted Remain last year - and where there were relatively few UKIP voters in 2015 - saw Labour pull off some of its best performances.

Just one example in London was Hampstead and Kilburn, where there was a 12% swing to Labour, while in Hove on the south coast, there was a remarkable 15% swing to the party.

It seems to be the case that Mrs May's brand of Brexit may have helped to squeeze the UKIP vote, but that at the same time it put off some Remain voters.

As a result of these patterns, while, at just under 44%, the Conservative Party secured its highest share of the vote since Mrs Thatcher's first election victory in 1979, it was not enough for an overall majority.

This was because, at 41%, Labour's vote also rose to its highest level since Tony Blair's first victory in 1997.

A question of class

One consequence of this divergent pattern between Remain and Leave areas is that there has been a marked change in the social geography of the Conservative vote.

Traditionally, the party holds most appeal for middle class voters.

But Leave voters were disproportionately working class.

Consequently, at this election the Conservative vote increased least in middle class seats, rising only two points in the constituencies with the highest proportion of middle class voters.

In contrast, the party's vote rose by no fewer than nine points in seats with the highest proportion of working class voters.

Brexit has therefore served to undermine one of the traditional features of the geography of voting in Britain.

Jeremy Corbyn won over young voters

Image copyright Getty Images

Labour has seemingly been highly successful in getting young voters and other former abstainers to turn out and vote - and for them - just as Jeremy Corbyn intended.

Where young voters were more numerous, the swing to Labour was often especially high - places like Bristol West (16% to Labour), Cardiff Central and Canterbury (both 9% to Labour).

More generally, in England and Wales there was only a 2.5% swing to Labour in seats where fewer than 7% of the population is aged 18-24, but a swing of 5% in seats where at least one in 10 people is of that age.

Meanwhile, turnout increased most in constituencies where Labour was strongest last time, and, at the same time, its vote increased most where the turnout went up by the highest amount.

But although Labour will be delighted at having denied the Conservatives an overall majority, its own success should not be exaggerated.

Its tally of 262 seats is only a handful higher than the total that the party won in 2010, when Gordon Brown's administration was ejected from office.

Labour is still a long way away from winning a majority for itself.

SNP snipped back

Image copyright Getty Images

Although the SNP is still the largest party in Scotland, it lost more than a third of its Westminster seats - falling back to 35 seats overall.

This will be a severe blow to the party's morale as it supposedly tries to embark on a second independence referendum.

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

The party suffered the misfortune of finding that its vote fell most where the party was previously strongest, such as the 21 point drop from 60% in 2015 to 39% now in Bannff and Buchan, enabling the Conservatives to win the seat.

Key losses included its former leader Alex Salmond and its current deputy leader Angus Robertson.

Liberal Democrats' mixed bag

It was a mixed night for Tim Farron's party - gaining eight seats but losing four.

The party has on average seen a small increase in its support in constituencies with the largest number of those with degrees, most notably in London.

But otherwise it has typically fallen back.

Image copyright Getty Images Image caption Tim Farron's party had a mixed night

However there have been a number of notable personal performances such as gains in Bath, Eastbourne and Twickenham.

The damage that the party suffered from its involvement in the coalition in the 2010-15 parliament has not begun to be repaired.

Almost everybody lost

This is a result that brought disappointment to all parties.

The Conservatives lost their majority.

Labour suffered its third defeat in a row.

The Liberal Democrats found themselves treading water.

The SNP's independence bandwagon came to a juddering halt.

And UKIP imploded.

It is not only Conservatives who will be asking why Mrs May changed her mind about holding a snap election.

The only winners are perhaps the DUP - to whom she seems to have awarded the role of kingmakers.