2017-04-22 18 views
1

私はいくつかのカラーマップをpythonで作った。その上に、私が走っているモデルで提供されている陸海のマスクを使って、いくつかの大陸の輪郭を追加したかったのです。土地は1または0、土地は1、土地は0で構成されています。 等高線プロットに奇妙な文字が書き込まれています。誰もがここに輪郭をつけて自分自身に接続する方法を知っているので、各行の端の間にある小さな変わった文字ではなく滑らかになります。 enter image description hereカラーマップ上の等高線:非連続(Python)

そして、ここではコードの一部(このマップを注意して他のマップを含むプロットの一部だったので、これはインデックス9のマップである)である:ここでは

は、図のように見えるものです。

lsmfile = netcdf.netcdf_file("/Volumes/LaCie/Plasim/Earth2/high/1367/SOL1367earth050.nc","r") 
lat = lsmfile.variables["lat"].data 
lon = lsmfile.variables["lon"].data 
mask = lsmfile.variables["lsm"].data 
mask = mask[0] 
cmap = plt.get_cmap('bwr') 

fig, ax = plt.subplots(nrows=5,ncols=2,figsize=(16,14)) 
im9 = ax.flat[9].pcolormesh(lon, lat, surfalbearth, cmap=cmap,norm=norm) 
fig.colorbar(im9, ax=ax.flat[9]) 
ax.flat[9].set_xlim(xmin=0, xmax=355) 
ax.flat[9].set_ylim(ymin=-86, ymax=86) 
CS = plt.contour(lon,lat,mask, 1,colors='k') 
plt.clabel(CS, fontsize=3, inline=1) 

fig.tight_layout() 
plt.savefig('Maps') 
plt.show() 

答えて

1

は、あなたがその行を削除するのであれば、等高線のラベルが消えるはずライン

plt.clabel(CS, fontsize=3, inline=1) 

を使用して、プロットでそれらの等高線のラベル(clabelが)を有するために求めているようです。

+0

これはかなり簡単でした。以前のコンタープロットコードを貼り付けるときには注意が必要でした。ありがとう! – JadeChee

関連する問題