web-dev-qa-db-ja.com

Pythonインポートできないベースマップモジュール

Pythonでmpl_toolkitsのベースマップモジュールをインポートするのに問題があります。モジュールディレクトリからtest.pyスクリプトを実行すると、次のようになります。

/usr/lib/python2.7/dist-packages/mpl_toolkits/basemap$ python test.py
Traceback (most recent call last):
File "test.py", line 1, in <module>
from mpl_toolkits.basemap import Basemap, shiftgrid
ImportError: No module named basemap

sys.pathは、「base_map」ディレクトリが「mpl_toolkits」ディレクトリ内にあると確信しているパスのリストを提供するため、取得できません。 import mpl_toolkitsに問題はありません。パスと結果を手動で追加するために試したことがあります:

>>> import sys
>>> sys.path.append('/usr/lib/python2.7/dist-packages/mpl_toolkits/basemap')
>>> import basemap
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "basemap/__init__.py", line 30, in <module>
from mpl_toolkits.basemap import pyproj
ImportError: No module named basemap

ソース( これら の指示に注意深く従って)、apt-get、condaから再インストールベースマップをアンインストールしようとしましたが、何も変わりません:ベースマップをインポートできません。

ご協力ありがとうございました

19
Arnaud PROST

私はこの問題に直面しており、anacondaを使用して解決することができました

プロフィールを有効にした後

source activate MyProfileName
conda install basemap

from mpl_toolkits.basemap import Basemap
import matplotlib.pyplot as plt
# setup Lambert Conformal basemap.
# set resolution=None to skip processing of boundary datasets.
m = Basemap(width=12000000,height=9000000,projection='lcc',
            resolution=None,lat_1=45.,lat_2=55,lat_0=50,lon_0=-107.)
m.bluemarble()
plt.show()

BlueMarble format of basemap

19
Anant Gupta

私は一分前まで同じ状況にありましたが、これを介してインストールすることはトリックを作りました:

Sudo apt-get install libgeos-3.5.0
Sudo apt-get install libgeos-dev
Sudo pip install https://github.com/matplotlib/basemap/archive/master.Zip
20
Akima

同じ問題がありました。 sysを使用してベースマップにアクセスしようとすると、そのエラーが発生します。しかし、これは私のために働いた:

import mpl_toolkits
mpl_toolkits.__path__.append('/usr/lib/python2.7/dist-packages/mpl_toolkits/')
from mpl_toolkits.basemap import Basemap
6
GStav

私はMacOSを使用してAnacondaを使用していません。このソリューションが私にとって有効であることがわかりました。私はそれが簡単で、LinuxとMacOの両方で動作するはずだと思います。

https://stackoverflow.com/a/53171723/2570842

brew install geos
pip3 install https://github.com/matplotlib/basemap/archive/master.Zip

Ubuntuの場合、

Sudo apt-get install geos
Sudo pip3 install https://github.com/matplotlib/basemap/archive/master.Zip
3
beahacker

here からダウンロードして、手動でインストールします。必ず正しいバージョンをダウンロードしてください(つまり、Python3.6の場合はbasemap‑1.2.0‑cp36‑cp36m‑win_AMD64.whl

リファレンス: https://stackoverflow.com/a/33020524/8730201

1
Sam

私はこの答えに従いました:

https://stackoverflow.com/a/43234894/3818277

ただし、mpl_toolkitsを誤ってインストールした可能性があります(またはわかりません)。私の場合、ベースマップはそのようなpymodulesにあります。

    mpl_toolkits.__path__.append('/usr/lib/pymodules/python2.7/mpl_toolkits/')
    from mpl_toolkits.basemap import Basemap

だから、これはubuntu 14.04 LTSで私のために働いた。

0
weatherman

次の手順でベースマップを機能させることができました。 --userをインストールしたことに注意してください。

  1. ベースマップの浅いクローン(git clone --depth 1 [email protected]:matplotlib/basemap.git)を作成するか、現在のバージョンのtarballを抽出します。
  2. 必要な前提ライブラリーをインストールします(Ubuntu、libgeos-devlibproj-devlibgeos++-devproj-dataproj-binlibgeos-c1v5libgeoslibproj12、と思います)。
  3. pip install --user pyproj matplotlib geosgeosが必要かどうかは実際にはわかりません)。

さて、ここで少し即興演奏しなければなりませんでした。 python setup.py installを使用してベースマップをインストールすると、Pythonパッケージに新しいEggディレクトリが作成されます。このディレクトリには、別のmpl_toolkitsを複製するmpl_toolkitsサブディレクトリが含まれますmatplotlibによってインストールされるディレクトリ。

だから、代わりに、私はやった

python setup.py build_ext --inplace
cp -a lib/mpl_toolkits/basemap /my/python/packages/dir/mpl_toolkits/basemap
cp lib/_geoslib.so /my/python/packages/dir

simpletest.pyのような例を実行できるようになりました。

0
Doctor Mohawk

Anacondaを使用している場合、ベースマップのパッケージがあります

condaベースマップのインストール

(pipにはベースマップパッケージがありません)

OR

Ubuntuシステムを使用している場合は、試すことができます

apt install python3-mpltoolkits.basemap

0
Santosh