代码之家  ›  专栏  ›  技术社区  ›  Jason

使用binned\u statistic\u 2d函数在python中绘制数据

  •  0
  • Jason  · 技术社区  · 5 年前

    我有一些数据有x,y坐标。基于这些x,y坐标,第三个值是0或1(假设1是命中,0是未命中)。

    我正在努力创造一个 热图 在某种程度上,显示值成为 (1).

    我的想法是将x和y值放入垃圾箱中重新创建地图,然后使用 binned_statistic_2d 函数,计算每个bin元素内的平均值。

    所以我跨越了一个 25,25 一套箱子:

    Ret =  (stats.binned_statistic_2d(data.x, data.z, data.HitMiss, statistic ='mean', bins = [25,25]))
    

    这很好地创建了一个 (25,25) 数据帧。

    现在最好的方法是什么来绘制三维或通过热图,我可以看到一边的输出 Ret.x_ 边缘和 Ret.y.edge binned_statistic_2d output ?

    我可以画出这样的图来 搁浅 数据类型:

    fig2 = plt.figure()
    ax = fig2.add_subplot(111, projection='3d')
    ax.scatter(Ret.x_edge[0:25], Ret.y_edge[0:25], Ret.statistic[16], c=Ret.statistic[16])
    

    但是对while循环中的每一行这样做似乎很乏味,而且应该有一种更简单的方法我不去处理。

    还有,有没有一种方法可以利用这些数据生成一个函数,这样在将来,基于这些数据,我可以输入x,y坐标并得到一个输出?概率应该看起来像一个圆顶,“死中心”是一个确定的 .

    0 回复  |  直到 5 年前