日々適当
hibitekitou

地図をプロットする下準備

cg |2018-12-18
メモね、メモ。該当記事へのポインタといいますか。

Pythonで地図をプロットするのに、mpl_toolkits.basemapってのが使えるらしいってことでググって環境構築のページを見かけるわけです。

matplotlib.basemapで簡単にマップを描画する [Qiita]

brew install geos
wget https://jaist.dl.sourceforge.net/project/matplotlib/matplotlib-toolkits/basemap-1.0.7/basemap-1.0.7.tar.gz
tar zxvf basemap-1.0.7.tar.gz
cd basemap-1.0.7
python setup.py install

なのですけど、とりあえず wget が入っていないのでそれを brew wget install でインストールですね。
で、同ページに例となるスクリプトが書かれていまして、それを実行しようとした時に色々つまづきます。

これは僕がpyenvの環境下のPythonで動かしていたことが原因なのだけど、numpy, matplotlib モジュールが入っていないので、それをインストールします。
で、import matplotlib.pyplot も失敗するのですけど、そちらは

pyenvとvirtualenvで環境構築した時にmatplotlib.pyplotが使えなかった時の対処法 [Qiita]

こちらで解決。

python -c "import matplotlib;print(matplotlib.matplotlib_fname())"

で見つかる matplotlibrc の backend : macosx を backend : Tkagg に書き換えるのだそうです。

そいで例に挙げられたPythonスクリプトを走らせると、今度は

AttributeError: 'AxesSubplot' object has no attribute 'get_axis_bgcolor'

と出てスクリプトが最後まで走りません。これについてはPythonの掲示板みたいなサイトの過去ログに、matplotlib 2.0.0 で廃止されたコマンドを実行しようとしていることが原因的なことがかかれてました。それに対処するためなのか、例となるスクリプトにコメントアウトされた行があって、それを使えるうようにしてエラーが出た行(と関連する行を)コメントアウトしたら動きました。

ということで、より目指したい描画を試しているサイトが

basemapやcartopyで地図上でplot [mwSoft]

こちらにありまして、そちらの一番最初のスクリプトまで動作することを確認(最後に plt.show() をつけることで下の図のように表示される)。



ってことで、今度はこちらのサイトの内容を試してみたいと思っています。
コメント ( 0 )|Trackback ( 0 )
 
コメント
 
コメントはありません。
コメントを投稿する
ブログ作成者から承認されるまでコメントは反映されません
 
名前
タイトル
URL
コメント
コメント利用規約に同意の上コメント投稿を行ってください。
数字4桁を入力し、投稿ボタンを押してください。