【问题标题】:smoothing imshow plot with matplotlib [duplicate]使用 matplotlib 平滑 imshow 图
【发布时间】:2016-03-17 18:05:59
【问题描述】:

我正在使用 matplotlib.pyplot 中的 imshow 绘制计数密度,但我希望绘制更平滑的图。

我可以对此应用任何过滤器吗?

【问题讨论】:

  • imshow 似乎没有平滑选项,因此您可能应该研究数据集本身的平滑。参见例如this例子
  • mpl 2.0 中新的默认插值将是'nearest'
  • @tcaswell 真的是重复的吗?尽管我同意解决方案是相同的,但我认为这里提出的问题与您引用的问题并不重复。我可以很容易地想象,根据所提出的问题,搜索其中一个的人可能找不到另一个。

标签: python matplotlib filter imshow


【解决方案1】:

尝试使用插值参数: ax.imshow(grid, interpolation=interp_method)

matplotlib demo

matplotlib api

如果您想手动处理过滤器的强度,您可以 做一些事情(scipy.ndimage有很多过滤器)

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)

获取(从左上角开始:原始图像,sigma=1,2,3):

【讨论】:

    猜你喜欢
    • 2014-07-16
    • 1970-01-01
    • 2014-11-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-06-10
    • 2011-12-24
    相关资源
    最近更新 更多