2016-04-19 24 views
0

matplotlibでpcolormeshを使用すると、edgecolorパラメータを使用してグリッドを取得できます。私はこのグリッドはありませんアンチエイリアスと正確に1つのピクセル幅になりたい:pcolormeshの1ピクセルグリッド線

plt.pcolormesh(x_bin_edges, y_bin_edges, z, edgecolor='k', linewidth=1, antialiased=False) 

しかし、このコードは私に2-3ピクセル幅でグリッドを与える(小さな赤いダッシュが視覚的なガイドとして追加されます):

を さらに線幅を減らす

linewidth=1

は(0.1を避ける)私1-2ピクセル幅でグリッド線を与える:

linewidth=0.1

線幅をさらに小さくすることは何もしないようです。すべてのグリッド線を1ピクセル幅にするにはどうすればよいですか?

私はPython 2.7.8のmatplotlib 1.4.2でpngファイルを作成するためにAggバックエンドを使用しています。

答えて

0

this回答に基づいて、私は私がしたいだけのように1つのピクセルのグリッド線を生成する代わりに、ax.gridを使用:

fig, ax = plt.subplots(1, 1) 

ax.grid(True, which='minor', axis='both', linestyle='-', color='k') 

ax.set_xticks(lon_grid, minor=True) 
ax.set_yticks(lat_grid, minor=True) 

ax.set_xlim(lon_grid[0], lon_grid[-1]) 
ax.set_ylim(lat_grid[0], lat_grid[-1]) 
関連する問題