Картопное общесистемное расположение для натуральных шейп-файлов земли - PullRequest
0 голосов
/ 03 мая 2018

Есть ли место, где я могу сконфигурировать и поместить шейп-файлы из естественной земли, которые могут использовать все пользователи? Моя система с воздушным зазором не может связаться с Интернетом, чтобы загрузить файлы, поэтому мне нужно указать в картопе местный магазин шейп-файлов и настроить его так, чтобы он смотрел туда, а не пытался связаться, если не может найти их в ~ /.local/share/cartopy/shapefiles/ структура файла. По этой причине даже самые простые тесты моей установки терпят неудачу. Я нашел несколько ссылок на то, как разместить шейп-файлы в этой структуре, так что я могу подражать этому где-то еще. Я полагаю, что можно было бы также создать символическую ссылку на каталоги каждого пользователя .local / share / cartopy / shapefiles в центральном месте, но это похоже на кучу. Есть ли лучший способ, по которому я скучаю?

РЕДАКТИРОВАТЬ: (надеюсь, что это способ переполнения стека - я оригинальный отправитель)

OK. Я вернулся к этому. Я загрузил шейп-файлы ne_110m_yada_yada, распаковал их и поместил в свой .local / share / cartopy / shapefile / natural_earth /ultural | физический), поскольку нашел их на подключенном ноутбуке, когда запустил эту тестовую программу:

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, чтобы он указывал на файл / data / cartopy /, где я надеялся, что он найдет / data / cartopy / shapefiles / natural_earth / культурный | физический файл, где находятся сжатые данные в конечном итоге проживал. Это ожидает сжатые файлы там, или это только, если это пытается выйти и загрузить их? Картопи не нашел там zip-файлов и попытался зайти в интернет. Каковы правила размещения данных в pre_existing_data_dir? Найдет ли cartopy zip-файлы, если они находятся в / data / cartopy /, и сделает все правильно. Или мне нужны подкаталоги shapefile / natural_earth? Я хотел бы просто указать это только на / data / cartopy и найти в нем любой шейп-файл или растровые данные, которые я запарковал в этой иерархии, независимо от источника. Естественная Земля - ​​это всего лишь контрольный пример. Я не исключаю, что мой сисадмин все испортил, но он чрезвычайно компетентен, и я, возможно, ввел его в заблуждение.

Ссылки и документация, приведенные в первоначальном ответе, были полезны, но не настолько полезны для меня, кто бросил вызов картопии.

1 Ответ

0 голосов
/ 04 мая 2018

Дубликат Местоположение сохраненных автономных данных для картопы

В итоге, кэш данных только для чтения может быть настроен с pre_existing_data_dir в cartopy.config. Для записываемого кэша (который может расширяться) data_dir является элементом конфигурации. Cartopy проверит кэш pre_existing_data_dir перед проверкой data_dir при определении того, нужно ли ему извлекать ресурс от вашего имени.

НТН


Ссылки:

Посмотрите на http://scitools.org.uk/cartopy/docs/latest/cartopy.html#cartopy.config, как настроить cartopy.

Вас также могут заинтересовать подобные вопросы по адресу:

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...