4

Basemap マップに曲線/円弧線をプロットしたいと考えています。map.plot(x,y,..) を使用して直線をプロットすることはできますが、どうすれば直線を曲線にしたり、矢印を付けたりできますか?

matplotlib では、これは annotate(..) を使用して実行できますが、Basemap にはこのメソッドがありません。

何か案は?

4

1 に答える 1

3

これは非常に古い質問ですが、とにかく答えるのが良いと思いました. あなたが曲線と言ったとき、私はあなたが大円を描くことを意味していると思いました. basemap documentationに正確にそれを行う例があり、自分で簡単に変更できるように変更しました。

from mpl_toolkits.basemap import Basemap
import numpy as np
import matplotlib.pyplot as plt

m = Basemap(projection='cyl')

p0_ll =  -73.98, 40.78
p1_ll = 0.08, 51.53

m.drawgreatcircle(p0_ll[0], p0_ll[1], p1_ll[0], p1_ll[1], 
                  linewidth=2, color='b')
m.drawcoastlines()
m.fillcontinents()

plt.show()

ここに画像の説明を入力

大円法はマップの端の交差を処理できないことに注意してください (ドキュメントに記載されているように)。

それが誰かを助けることを願って、

于 2012-07-16T14:06:41.497 に答える