Подтвердить что ты не робот

OSError geos_c не удалось найти при установке Shapely

Я новичок в создании/составлении карт на картах с помощью python, пытаюсь следовать этому блогу, чтобы создать карту мира (http://sciblogs.co.nz/seeing-data/2011/08/12/plotting -geographic-данный на-миро-карта-с-питоном/). Здесь есть несколько вещей:

  • Установка базовой карты (расширение Matplotlib для построения данных по географическим проекциям).

    from mpl_toolkits.basemap import Basemap
    Traceback (most recent call last):
    File "geos_demo.py", line 1, in <module>
    from mpl_toolkits.basemap import Basemap
    ImportError: No module named mpl_toolkits.basemap
    
  • Установить Shapely, но появляется следующая ошибка [1]:

  • Затем я зашел в файл geos.py и изменил все ссылки geos.dll на geos_c.dll, как рекомендовано по ссылке здесь: http://osgeo-org.1560.n6.nabble.com/osgeo4w-258-Problems-with-python-shapely-python-2-7-2-td4336816.html

  • Однако возникает та же ошибка [1].

Я использую Python 2.7.1 и Mac OS 10.7.4. Пожалуйста, дайте мне знать, если я могу предоставить дополнительную информацию, и действительно ценю любое руководство от сообщества здесь! Спасибо!

[1]

    from shapely.geometry import Point
    Traceback (most recent call last): File "<stdin>", line 1, in <module>
    File "/Users/Desktop/python/ENV/lib/python2.7/site-packages/shapely/geometry/__init__.py", line 4, in <module>
    from geo import box, shape, asShape, mapping
    File "/Users/Desktop/python/ENV/lib/python2.7/site-packages/shapely/geometry/geo.py", line 5, in <module>
    from point import Point, asPoint
    File "/Users/Desktop/python/ENV/lib/python2.7/site-packages/shapely/geometry/point.py", line 7, in <module>
    from shapely.coords import required
    File "/Users/Desktop/python/ENV/lib/python2.7/site-packages/shapely/coords.py", line 8, in <module>
    from shapely.geos import lgeos
    File "/Users/Desktop/python/ENV/lib/python2.7/site-packages/shapely/geos.py", line 59, in <module>
    _lgeos = load_dll('geos_c', fallbacks=alt_paths)
     File "/Users/Desktop/python/ENV/lib/python2.7/site-packages/shapely/geos.py", line 44, in load_dll
    libname, fallbacks or []))
    OSError: Could not find library geos_c or load any of its variants        ['/Library/Frameworks/GEOS.framework/Versions/Current/GEOS', '/opt/local/lib/libgeos_c.dylib']
4b9b3361

Ответ 1

Для вопросов 2-4 вы должны установить GEOS в своей системе. Если у вас есть доморощенный, вы можете сделать следующее:

brew install geos

Установите homebrew здесь, если у вас его нет: http://mxcl.github.com/homebrew/

Ответ 2

В Ubuntu для установки GEOS это сработало для меня:

$ sudo apt-get install libgeos-dev

Ответ 3

С OS X 10.11 (El Capitan) и Boxen я сделал это:

brew install geos
sudo mkdir /opt/local
sudo ln -s /opt/boxen/homebrew/lib /opt/local/lib

чтобы Shapely нашел libgeos_c.dylib в одном из мест, где он был готов его искать.

Ответ 4

Проблема заключается в том, что вы на самом деле не установили необходимые модули.

Строки кода Python, например

from mpl_toolkits.basemap import Basemap

Операторы импорта, которые сообщают вашему script, использовать модули (или другие биты кода Python), которые вам необходимо установить.

Для каждого из упомянутых пакетов (NumPy, Matplotlib, Basemap) вам нужно будет выяснить, как их установить в вашей системе. В случае NumPy и Matplotlib это может быть сложно, потому что они требуют компиляции. Например это неуправляемые инструкции.

Если вы просто хотели попробовать сыграть с инструкциями в этом сообщении в блоге, вы можете использовать сервис, например PythonAnywhere, у которого уже установлены numpy, matplotlib и baseemap. (отказ от ответственности, я работаю над PythonAnywhere...)

Ответ 5

на windows 10, python 3.6.5 64bit

  • установить osgeo4w
  • добавить установленную папку в PATH, например C:\OSGeo4W64\bin (должен содержать geos_c.dll)
  • перезапустить командную строку

наслаждаться

Ответ 6

Я знаю, что это довольно старый вопрос, но, в качестве альтернативы @user1050660, вы также можете использовать MacPorts для установки библиотеки geos:

port install geos

И шаги установки для MacPorts описаны здесь: https://www.macports.org/install.php