问题标签 [histogram2d]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
774 浏览

python - 如何使用 np.hist2D() 找到计数最高的 bin

有没有办法从np.hist2D(). 到目前为止,我的代码是:

我设法得到了counts但很难将它与 x 和 y 边缘联系起来。

谢谢你。

更新:

我解决了 - 欢迎任何更整洁的解决方案。

0 投票
1 回答
320 浏览

python - 为什么 binned_statistic_2d 现在抛出 TypeError?

我一直在使用 scipy 的 binned_statistic_2d 函数来绘制一些数据的二维直方图,特别是通过设置 expand_binnumbers = True 返回数据所在的 bin 的索引列表。它运行良好,直到今天。以下代码演示了我的问题:

TypeError:输入类型不支持 ufunc 'isfinite',并且根据转换规则 ''safe'' 无法安全地将输入强制转换为任何支持的类型

任何想法为什么这应该突然停止工作?

0 投票
0 回答
203 浏览

python - 使用 Pyspark(Numpy 和 UDF)高效计算 2D 直方图

我正在尝试做一些非常简单的事情,当涉及 Pyspark 时,它会以某种方式转化为非常困难的事情。

我的平台上有一个非常大的数据框(~2B 行),我不允许下载,只能使用 Pyspark 代码进行分析。数据框包含去年欧洲一些物体的位置,我想计算这些物体随时间的密度。我过去曾成功使用过该功能并取得了不错的效果(至少numpy.histogram2d我发现它的速度更快)。由于在我定义了一个 UDF 来计算密度并返回一个新的数据帧numpy中没有等效的这个函数。pyspark这在我只处理几行时有效(我尝试过 100K 行):

然后我称之为

为什么我使用GROUPED_MAP版本来应用 UDF?当返回一个模式时,我没有设法让它与SCALARUDF 类型一起工作,尽管我真的不需要分组。

当我尝试在完整数据集上使用此 UDF 时,我得到了一个 OOM,因为我相信只有一个组并且 UDF 无法处理太多。我确信有一种更聪明的方法可以在pyspark没有 UDF 的情况下直接计算它,或者分成几组,然后在最后组装结果?有没有人有任何想法/建议?

0 投票
2 回答
855 浏览

python - 如何在 Python 3 中使用 bins=40 将 mathlibplot.hist 与 x 和 y 值一起使用?

我有一大堆 x 和 y 值的数据点,我需要将它们放入带有 40 个 bin 的直方图中,但 mathlibplot.hist 只允许我输入 1 个带 bin 的变量。我也尝试过 hist2d 但它不是很干净。任何帮助,将不胜感激!

0 投票
1 回答
472 浏览

python - 数据着色器为每个日期更改颜色

对于带有数据着色器的散点图,我想将时间的概念合并到图中。可能通过使用颜色。

目前,

在此处输入图像描述

但是,现在无法区分不同的日期。绘图时如何包含日期信息(例如使用颜色)?

0 投票
2 回答
128 浏览

python - 2d 直方图:获取完整 nbins x nbins 的结果

我正在使用 matplotlib 的 hist2d 函数来制作我拥有的数据的二维直方图,但是我无法解释结果。

这是我的情节:

在此处输入图像描述

这是使用以下行创建的:

这将返回 (160, 160) 的二维数组,以及 bin 边缘等。

在图中,有一些值频率很高的箱(黄色箱)。我希望能够获得此直方图的结果并过滤掉具有低值的 bin,保留高 bin。但我希望会有 160*160 的值,但我只能找到 160 X 和 160 Y 的值。

我想做的基本上是从密度较小的数据中过滤掉密度较大的数据。如果这意味着将数据表示为单个值(bin),那没关系。

我是误解了函数还是没有正确访问数据结果?我也尝试过辣味,但结果似乎是相同或相似的格式。

0 投票
1 回答
555 浏览

python - 如何在 matplotlib 2d 直方图中居中 bin 标签?

对于 matplotlib pyplot 2d 直方图,如何将 bin 标签居中在 x 和 y 中?

我尝试了以下方法:

这产生了这个情节: 二维直方图

如您所见,bin 标签未居中。如何编辑标签方案以使 bin 标签 ([0,15][0,6]) 位于 bin 的中心?

0 投票
0 回答
50 浏览

julia - Colorgradient 在 StatsPlots corrplot 上未正确显示

我正在尝试corrplot使用 Julia 获取一些三维数据数组。StatsPlots 文档包括以下示例corrplot

关联图示例

但是,当我尝试运行相同的脚本时,我得到了平面直方图(没有颜色渐变):

本地主机示例

我使用以下脚本生成了上图:

我不确定我在做什么不同。我的 Julia 版本是 1.3.1,我的 StatsPlots 版本是 0.14.6。

0 投票
0 回答
215 浏览

algorithm - 计算面积> = K的二维直方图中的矩形数

问题在于具有N列的二维直方图,计算面积≥ K的矩形数量。列的宽度为 1,我知道第 i 列上的单位正方形的数量

我提出了以下O(N²)算法:设h i为第 i的高度。然后我可以执行以下操作:当我将i,j固定为矩形的底边时,我找到矩形h的最高可能高度并添加max(0, h - ceil(K/(j-i+1)) + 1)到答案中。

我听说有一个O(N log N)算法,我试图通过使用事实来推导它

∑<sup> N i=1 N ⁄<sub>i ~ N log N

但是,这就是我所拥有的一切,我无法取得进一步的进展。你能给出算法的提示吗?

0 投票
0 回答
407 浏览

python - 如何从图像中获取 x,y 坐标以生成热图(python)

我是一个编程初学者。我正在使用图像,我想用简单的代码分析它们(一开始)。

我有白色背景上有黑点的图像(JPEG 文件)。我想创建一个热图或密集图来识别我有很多点和我有很少点的区域。

我看到有些人使用 histogram2d 我必须输入 x 和 y 坐标。我知道图像是一个数组,因此它包含像素的 x,y 坐标,但我不知道如何访问它们以使用函数 histogram2d 例如。有人能帮我吗?因为我是初学者,所以我想得到一些解释,如果有人能这么好心地解释一下,我将非常感激。

也许还有另一个函数可以用于这种方法。如果是这样,请给我一些建议

预先感谢您帮助我。

我意识到我需要先拿到黑锅。所以我调整了代码:

当我像上面那样单独尝试第一部分时效果很好,我得到了两个带有 x 和 y 坐标的数组!所以我把两个代码放在一起:

然后我得到一个我不明白的错误。

(注解)C:\Users\die5k\Desktop\NeuerOrdner>python combi.py Traceback(最近一次调用最后):文件“combi.py”,第31行,在getcoordinates(img)文件“combi.py”,第13行, 在 getcoordinates xcoords, ycoords = np.where((n[:, :, 0:3] == [0,0,0]).all(2)) IndexError: too many indices for array: array is 2-维度,但有 3 个被索引

什么地方出了错?

顺便说一句,我剪切了原始图像,使其仅包含一个用于尝试代码的黑点。

我有一个图像示例: 在此处输入图像描述

我想在这个网站上展示一些类似的东西:https ://python-graph-gallery.com/86-avoid-overlapping-in-scatterplot-with-2d-density/