我可以配置任何位置并放置所有用户都可以使用的自然地球形状文件吗?我的气隙系统无法通过互联网下载文件,所以我需要在当地的shapefile商店指出纸箱并将其配置为在那里查看,而不是试图伸手可及的地方,如果它不能在〜/ .local / share / cartopy / shapefiles /文件结构中找到它们。由于这个原因,即使是最简单的安装测试也会失败。我已经找到了一些关于如何在该结构中放置shapefile的参考资料,所以我可以模仿其他地方。我想也可以将每个用户的.local / share / cartopy / shapefiles目录符号链接到一个中心位置,但这看起来像一个kludge。有没有更好的方法让我失踪?
编辑:(希望这是stackoverflow方式 - 我是原始提交者)
行。我重新回到这里。我下载了ne_110m_yada_yada shapefile解压缩并将它们放入我的.local / share / cartopy / shapefile / natural_earth / cultural | physical中,当我运行此测试程序时,我在连接的笔记本电脑上找到它们:
import cartopy
import matplotlib.pyplot as plt
def main():
ax = plt.axes(projection=cartopy.crs.PlateCarree())
ax.add_feature(cartopy.feature.LAND)
ax.add_feature(cartopy.feature.OCEAN)
ax.add_feature(cartopy.feature.COASTLINE)
ax.add_feature(cartopy.feature.BORDERS, linestyle=':')
ax.add_feature(cartopy.feature.LAKES, alpha=0.5)
ax.add_feature(cartopy.feature.RIVERS)
ax.set_extent([-20, 60, -40, 40])
plt.show()
if __name__ == '__main__':
main()
按预期工作。我将文件隐藏在我的.local缓存中并让我的系统管理员破解了cartopy.config指向in / data / cartopy /我希望它在哪里找到/ data / cartopy / shapefiles / natural_earth / cultural | physical里面的压缩数据最终居住。是期待压缩文件还是只有当它试图出去下载它们? Cartopy没有找到那里的zip文件,并试图上网。将数据放入pre_existing_data_dir的规则是什么?如果放在/ data / cartopy /中,则cartopy会找到zip文件并执行正确的操作。或者我需要shapefile / natural_earth子目录?我只想将它指向/ data / cartopy,并让它找到我停放在该层次结构中的任何shapefile或栅格数据,无论来源如何。自然地球仅仅是测试案例。我并不排除我的系统管理员搞砸了,但他非常称职,我可能误导了他。
初始答案中提供的链接和文档很有帮助,但对于卡车挑战我来说没有足够的帮助。
答案 0 :(得分:0)
重复Location of stored offline data for cartopy
总之,可以在pre_existing_data_dir
中使用cartopy.config
配置只读数据缓存。对于可写缓存(该载体可以扩展)data_dir
是配置项。在确定是否需要代表您获取资源时,Cartopy会在检查pre_existing_data_dir
之前检查data_dir
缓存。
HTH
参考文献:
请查看http://scitools.org.uk/cartopy/docs/latest/cartopy.html#cartopy.config了解如何配置折扣。
您可能也会对以下类似问题感兴趣: