imshow 平滑显示,用matplotlib平滑imshow图

I am plotting a density of counts with imshow from matplotlib.pyplot but I'd like to have a smoother plot.

8kraS.png

Can I apply any filter on this?

解决方案

Try using the interpolation argument:

ax.imshow(grid, interpolation=interp_method)

If you manually want to handle how strong the filter is you could

do something along the lines of (scipy.ndimage has a lot of filters)

from scipy.ndimage.filters import gaussian_filter

arr=np.zeros((20,20))

arr[0,:]=3

arr[0,0]=20

arr[19,19]=30

arr[10:12,10:12]=10

filtered_arr=gaussian_filter(arr, sigma)

plt.imshow(filtered_arr)

to get (from top left: raw image, sigma=1,2,3):

xecTV.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值