1
私は、ベースマップからマップ上に一連の緯度/経度の散布図を作成しています。私は、異なる緯度/経度のデータを使って何千ものプロットを作成する予定です。時間を節約するために、私は一度だけマップオーバーレイを描きたかった:matplotlibのプロット間のマップオーバーレイを維持する
map = Basemap(epsg=3395, projection='merc', lat_0=59.45, lon_0=10.5,
resolution = 'h',
llcrnrlon=minlong, llcrnrlat=minlat,
urcrnrlon=maxlong, urcrnrlat=maxlat
map.arcgisimage(service='ESRI_Imagery_World_2D', xpixels=3000, verbose=True)
しかし、私は新しいものをプロットする前に、私の以前の散布をクリアする手立てを見つけていません。
for each set in sets:
x = set[0]
y = set[1]
x,y = map(x,y)
plt.scatter(x,y, s=2.5, alpha=1, color=c, edgecolors='none')
plt.savefig('title.png', format='png', bbox_inches='tight', dpi=500)
私は次のような場合:
plt.clf()
または
plt.close()
私は私のマップを再描画する必要があります。私が何も持っていなければ、以前の反復からの散布図がプロットされます。だから、どのように私はすべての散布図データを削除しますが、マップデータを保持しますか?
はあなたの提案を実装するときに、私は次のエラーを取得する、ありがとう: 'スキャット、= plt.scatterを([]、[]、= 2.5、アルファ= 1秒、カラー= C、edgecolors =」 none ') TypeError:' PathCollection 'オブジェクトは反復可能ではありません。 – bjornasm
コンマは使用しないでください。 'scat = plt.scatter(...)' – ImportanceOfBeingErnest
@ImportanceOfBeingErnestあなたは正しいです。ありがとう! – pingul