直方图分类箱,TypeError:无法使用灵活类型执行归约

时间:2019-03-27 14:10:45

标签: python histogram

我想让绘图具有相同的范围,以将它们绘制在同一张图中。因此,我需要按照thomas的建议在此处https://stackoverflow.com/a/55377604/7919440明确添加垃圾箱。两者都是numpy数组。

我的代码是这样:

plt.figure(figsize=(70,10))

for i,h in enumerate(clean_head):

    plt.subplot(1,6,i+1)
    a = non_fire[:,i]
    b = fire[:,i]

    bins = np.linspace(min(np.min(a), np.min(b)), max(np.max(a), np.max(b)), 10)
    plt.hist(a,alpha=.3,bins=bins)
    plt.hist(b,alpha=.3,bins=bins)
    plt.title(clean_head[i])

但我收到此错误:

  

TypeError:无法使用灵活类型执行归约

我应该以某种方式更改其类型吗?

1 个答案:

答案 0 :(得分:0)

已解决:问题是我不得不使用.astype(np.float)将np.array的数据类型更改为灵活类型,如下所示:

plt.figure(figsize=(70,10))

for i,h in enumerate(clean_head):

    plt.subplot(1,6,i+1)
    a = non_fire[:,i].astype(np.float)
    b = fire[:,i].astype(np.float)

    bins = np.linspace(min(np.min(a), np.min(b)), max(np.max(a), np.max(b)), 10)
    plt.hist(a,alpha=.3,bins=bins)
    plt.hist(b,alpha=.3,bins=bins)
    plt.title(clean_head[i])

   # plt.tight_layout()