放大 cartopy 地图并添加海洋特征会将整个地块变为蓝色?
Zooming in on cartopy map and adding the ocean feature changes the entire plot to blue?
我有一张欧洲的图,但是,出于某种原因,当我包含 ax.add_feature(cartopy.feature.OCEAN)
时,它会将整个图变成蓝色。我不确定如何解决这个问题,如有任何帮助,我们将不胜感激!
只有当我更改范围以进一步放大欧洲时才会发生这种情况。
plt.figure(figsize=(9, 9))
ax = plt.axes(projection=cartopy.crs.TransverseMercator(32))
ax.add_feature(cartopy.feature.BORDERS, linestyle='-', alpha=1)
ax.coastlines(resolution='110m')
ax.gridlines()
ax.set_extent((-7.5, 50, 34, 55), cartopy.crs.PlateCarree())
ax.add_feature(cartopy.feature.OCEAN)
plt.show()
cartopy.feature.OCEAN
是更复杂的 NaturalEarthFeature
函数的简单版本,使用起来更安全。这里有几行代码,你可以用它来替换麻烦的部分。
替换
ax.add_feature(cartopy.feature.OCEAN)
和
choice = 1
if choice==1:
# this solves the problem
ocean110 = cartopy.feature.NaturalEarthFeature('physical', 'ocean', \
scale='110m', edgecolor='none', facecolor=cartopy.feature.COLORS['water'])
ax.add_feature(ocean110)
else:
# this (sometimes) causes the ocean spill all over
ax.add_feature(cartopy.feature.OCEAN)
这允许您设置 choice=1 或 0 并且 运行 检查情节。
如果选择=1,输出将是:
我有一张欧洲的图,但是,出于某种原因,当我包含 ax.add_feature(cartopy.feature.OCEAN)
时,它会将整个图变成蓝色。我不确定如何解决这个问题,如有任何帮助,我们将不胜感激!
只有当我更改范围以进一步放大欧洲时才会发生这种情况。
plt.figure(figsize=(9, 9))
ax = plt.axes(projection=cartopy.crs.TransverseMercator(32))
ax.add_feature(cartopy.feature.BORDERS, linestyle='-', alpha=1)
ax.coastlines(resolution='110m')
ax.gridlines()
ax.set_extent((-7.5, 50, 34, 55), cartopy.crs.PlateCarree())
ax.add_feature(cartopy.feature.OCEAN)
plt.show()
cartopy.feature.OCEAN
是更复杂的 NaturalEarthFeature
函数的简单版本,使用起来更安全。这里有几行代码,你可以用它来替换麻烦的部分。
替换
ax.add_feature(cartopy.feature.OCEAN)
和
choice = 1
if choice==1:
# this solves the problem
ocean110 = cartopy.feature.NaturalEarthFeature('physical', 'ocean', \
scale='110m', edgecolor='none', facecolor=cartopy.feature.COLORS['water'])
ax.add_feature(ocean110)
else:
# this (sometimes) causes the ocean spill all over
ax.add_feature(cartopy.feature.OCEAN)
这允许您设置 choice=1 或 0 并且 运行 检查情节。
如果选择=1,输出将是: