Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Natural Earth and GSHHS coastlines differ #787

Closed
jjhelmus opened this issue Jul 29, 2016 · 4 comments
Closed

Natural Earth and GSHHS coastlines differ #787

jjhelmus opened this issue Jul 29, 2016 · 4 comments

Comments

@jjhelmus
Copy link

Not sure if this is the best place to report this, but it seems that the coastline data differs conspicuously between Natural Earth and the GSHHS dataset. In the case that a few of us were examining, nguy/artview#156, the GSHHS coastlines were a better match observational data but this may not be true in general.

The coastline of Barrow, Alaska shows this difference quite clearly:

import cartopy
import cartopy.crs as ccrs
import matplotlib.pyplot as plt

# projection
lat_0 = 71.2
lon_0 = -156.5
proj = ccrs.LambertConformal(central_longitude=lon_0, central_latitude=lat_0,
                             standard_parallels=(lat_0, ))

# set up the axes
fig = plt.figure(figsize=(10, 10))
ax = plt.axes(projection=proj)

# add coastlines from Natural Earth
ax.coastlines('10m')

# add coastlines from GSHHS
shpfile = cartopy.io.shapereader.gshhs('h')
shp = cartopy.io.shapereader.Reader(shpfile)
ax.add_geometries(
    shp.geometries(), ccrs.PlateCarree(), edgecolor='red', facecolor='none')

ax.set_extent([-157.0, -156.0, 71.1, 71.5])
plt.show()

barrow

This may be related to issue #604.

@dopplershift
Copy link
Contributor

Could this be an issue of an assumed spheroid? It's reminiscent of this example: http://scitools.org.uk/cartopy/docs/latest/examples/effects_of_the_ellipse.html

@micahcochran
Copy link

This is an issue of your source data's accuracy.

Scale is one item that will impact the resulting visualization. How many point do you need to represent that outline at a particular "zoom level"?

Natural Earth seems to be at a 1:10 million scale.
GSHHG scale I speculate to be about 1:500,000 (see this article).
USGS Topo scale stuff is digitized at 1:24,000.
I do city mapping and will routinely digitize at 1:1,000.

The closer the scale's fraction is to one (1), the more points that are used to represent a feature. Meaning the more accurate it will look across all scales.

Also, how positional accurate was the source map, aerial photo, or satellite image used to digitize the vector coastline? If it is off it will introduce error.

So, what you are pointing out does not surprise me in the least bit.

@kaspervanwijk
Copy link

kaspervanwijk commented Sep 29, 2016

I confirm jjhelmus' observations, and asked about the accuracy of the coastlines() from natural earth: I think they can be off at the 10m scale. See also here

@pelson
Copy link
Member

pelson commented Nov 20, 2017

Interesting. It always amazes me how shaky this stuff is - if you look too closely, you find issues everywhere! 😄
At least in this instance, it isn't a cartopy problem 😉

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants