Is there a simple (low res is fine) polygonal data set that divides the entirety of Earth's surface into continents, with no overlap and no area excluded?

Specifically: North America, South America, Africa, Europe, Asia, Oceania and Antarctica.

I am working with a data set where most of the points are located in seas and oceans. An approximate sense of which continent all these points 'belong' to is needed.

All continent shapefiles I've seen so far trace out the coast lines, however this excludes these marine locations.

Even using country EEZ lines to map to countries and then to continents will leave much of the ocean's surface unclaimed by any continent.

I understand that such a data set might not provide a valid definition of the continents, but in my case I require all points on Earth to be associated with a continent.

Alternatively, if I must create such a data set myself, can anyone recommend a tool for doing so?

EDIT lynxlynxlynx made the interesting suggestion of using tectonic plate data:

However, for my purposes I would have to subdivide the Eurasian plate, and the ocean to the immediate west of North America would end up in the Pacific plate which is best matched with Oceania.


I have a data set of lat/lng points of scuba diving locations. I wish to collate all of the dive sites at which one of my users has dived and produce a list of all the continents in which that user would reasonably think that they have dived. As one can dive anywhere on the surface of Earth, I would ideally like to cover the earth with such a diagram.

I'm undecided about outliers such as Hawaii, which might be considered Oceania by location yet North America politically. I would tend to favour geographical location in such cases, but if a solution is easier the other way around, then that's fine too.

  • 1
    If you can find tectonic plate data, then it would be simplest to disolve them into the "continents" you want (if they don't have any grouping already). – lynxlynxlynx Jul 25 '12 at 10:19
  • @lynxlynxlynx, I edited my question in response to your comment. Thanks for fixing my typo too. – Drew Noakes Jul 25 '12 at 10:36
  • 2
    It might help if you can explain what you are trying to achieve (i.e what the data will be used for). There are many possible answers here, and a lot of them probably aren't what you want. For example, is Cocos Keeling Island (part of Australia, which I guess is Oceania) or part of Asia? – BradHards Jul 25 '12 at 10:38
  • @user1413799, I have edited the question to provide a little more detail about what I'm trying to achieve, and to address your question. – Drew Noakes Jul 25 '12 at 12:34

If you're not too bothered about political or physical geography, one possible solution would be:

  • Take a dataset such as this one, and classify each country by its continent. Unfortunately that dataset doesn't have continent information, so you may have to do it by hand, or by a table join if you can find a country-code to continent dataset.
  • Then convert each vertex to a point feature, retaining the continent attribute per vertex.
  • Next, generate a Voronoi dataset from the points.
  • Finally merge all Voronoi polygons that share the same continent attribute.
  • I considered doing this using the Natural Earth dataset for Admin 0 regions. I think that data set actually includes continent names for the countries. However this would still leave me with the problem of having to expand from country borders out into open ocean. Voronoi diagrams have one desirable property in that they cover the entire space, however I don't think there's a point cloud that would provide what I want here. Can you think of one? – Drew Noakes Jul 25 '12 at 13:18
  • I must be misunderstanding what you want then. The way I picture it is, take South America, Africa, and the South Atlantic in between. The Voronoi graph would be very dense around the coast regions, but the cells on the coastal side would stretch to half way between the two continents, roughly duplicating the Atlantic trench. On the other side of the world, the Pacific would be split approximately down the dateline, wiggling about around Hawaii and NZ. This would give you total global coverage, with oceanic cells representing the nearest landmass. – MerseyViking Jul 25 '12 at 13:48
  • Would that require using country polygon vertices as points from which the Voronoi map is generated? If so, I can't picture how it would work along shared boundaries. If not, then there's no guarantee that the shared boundaries would be correct. Perhaps it's possible to use this approach only to generate new boundaries for coastal edges. This all sounds like a lot of development however for something that I'd be happy to sketch out approximately by hand, assuming the tools existed -- shared boundaries being the complication here again. – Drew Noakes Jul 25 '12 at 13:56
  • Ah yes, of course, it'd mess up any actual boundaries. I suppose you could take the vertices of shared boundaries, duplicate them, offset them by a small amount either side, and run the Voronoi process. I've got a feeling that unless someone's already created this dataset, no matter what you do it's going to be a fairly manual task. – MerseyViking Jul 25 '12 at 16:59

Perhaps it doesn't matter that some parts of the ocean aren't covered? People don't really dive in random bits of open water - they dive where there is something interesting to see, which is usually not far from land. So the continental shelf gives you "continent".

Now you need some reasonable estimate of places. Perhaps you can use the VLIZ shapefiles to solve this.

  • I last looked the VLIZ data a few years back, and I'm pretty sure it was only a polyline set. They have a polygon set now (or I missed it before) which is actually pretty well suited to my needs. However I still need to merge the various country sets into a continent poly. Can you recommend any good tools for this? – Drew Noakes Jul 27 '12 at 9:42
  • I didn't know of a data set, but google turned up World Atlas (worldatlas.com/cntycont.htm) – BradHards Jul 27 '12 at 9:52

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.