2012-09-25 12 views
17

Jestem nowicjuszem w tworzeniu/kreśleniu na mapach z pythonem, starałem się śledzić ten blog w celu wygenerowania mapy świata (http://sciblogs.co.nz/seeing- data/2011/08/12/spisek-dane geograficzne-na-mapie-świata-z pythonem /). Utknął z tutaj kilka rzeczy:Nie można znaleźć OSError geos_c podczas instalacji Zgrabnego

  1. Instalacja bazowa (rozszerzenie matplotlib dla wykreślania danych o projekcje geograficznych).

    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 
    
  2. Install Zgrabna, ale pojawia się następujący błąd [1]:

  3. Potem poszedłem do pliku geos.py i zmienić wszystkie odniesienia geos.dll do geos_c.dll, zgodnie z zaleceniami przez link tutaj: http://osgeo-org.1560.n6.nabble.com/osgeo4w-258-Problems-with-python-shapely-python-2-7-2-td4336816.html

  4. Jednak pojawia się ten sam błąd [1].

Używam Python 2.7.1 i Mac OS 10.7.4. Daj mi znać, jeśli mogę podać dodatkowe informacje i naprawdę doceniam wskazówki od społeczności tutaj! Dzięki!

[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'] 

Odpowiedz

2

Problem wydaje się być to, że nie zostały faktycznie zainstalowanych wymaganych modułów.

Linie kodu Pythona jak

from mpl_toolkits.basemap import Basemap 

są stwierdzeniami importowe, które mówią skrypt używać modułów (lub inne fragmenty kodu Pythona), które trzeba już zainstalowany.

Dla każdego z wymienionych pakietów (NumPy, Matplotlib, Basemap) musisz dowiedzieć się, jak je zainstalować w swoim systemie. W przypadku NumPy i Matplotlib może to być skomplikowane, ponieważ wymagają kompilacji. Na przykład: these are theNumpy instructions.

Jeśli po prostu chcesz wypróbować grę z instrukcjami na tym blogu, możesz skorzystać z usługi takiej jak PythonAnywhere which has numpy, matplotlib, and basemap installed already. (zrzeczenie się, pracuję na PythonAnywhere ...)

+0

Dzięki @aychedee.Zainstalowałem numpy i nie mogłem znaleźć mapy bazowej. Czy PythonAnywhere pomaga zainstalować mapę bazową razem z innymi bibliotekami? – msunbot

+0

Witaj, Michelle, właściwie mapa bazowa jest już zainstalowana jako standardowy pakiet. Jedyną różnicą w ukończeniu tego samouczka będzie to, że będziesz musiał zapisać wykres jako plik, a następnie pobrać go zamiast wyświetlać bezpośrednio. – aychedee

14

W przypadku pytań 2-4, musisz mieć zainstalowany system GEOS. Jeśli masz homebrew można wykonać następujące czynności:

brew install geos

zainstalować homebrew tutaj, jeśli nie ma go: http://mxcl.github.com/homebrew/

+0

Rozwiązało to problem dla mnie. – Sjoerd

+1

Po wykonaniu polecenia napisz: geos_c lub nie mogę wczytać żadnego z jego wariantów, nadal mam ten sam błąd: [OSRAMR: nie mogę znaleźć biblioteki geos_c ani załadować żadnego z jej wariantów ['/Library/Frameworks/GEOS.framework/Versions/Current/GEOS' , '/opt/local/lib/libgeos_c.dylib'] –

+0

Dobra robota, rozwiązałem problem także dla mnie. Dzięki! – aBiologist

12

na Ubuntu, aby zainstalować GEOS ten pracował dla mnie:

$ sudo apt-get install libgeos-dev 
3

Z OS X 10.11 (El Capitan) i boks, miałem rób tego:

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

pozwolić Shapely znaleźć libgeos_c.dylib w jednym z miejsc, w których był skłonny go szukać.

+0

Miałem problem z uruchomieniem kartonu z zainstalowanymi libgeosami i musiałem użyć tej sztuczki, aby rozwiązać problem - dzięki za podpowiedź! – user1718097

Powiązane problemy