问题标签 [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.
python - 使用 healpy 使用 HEALPix 像素化制作 2D 直方图
数据是天空中物体的坐标,例如:
我想做一个 2D 直方图,以便(l, b)
在 Mollweide 投影上使用 HEALPix 像素化绘制带有天空坐标的某个点的密度图。我怎样才能使用 healpy 做到这一点?
教程:
说如何绘制一维数组或拟合文件,但我不知道如何使用这种像素化来绘制二维直方图。
我也找到了这个功能,但它不起作用,所以我被卡住了。
我可以通过这种方式在 Mollweide 投影中绘制这些点:
非常感谢您的帮助。
python - 如何平滑或重叠 pyplot.hist2d 中的 bin?
我正在绘制一个 2D 直方图来显示,例如,闪电的集中度(由它们在经度和纬度中记录的位置给出)。数据点的数量不是太大(53),结果太粗略。这是结果的图片:
出于这个原因,我试图找到一种方法来加权来自周围垃圾箱的数据。例如,在经度 = 130 和纬度 = 34.395 处有一个 bin 记录了 0 个闪电,但它周围有几个。我希望这个垃圾箱能以某种方式反映它周围的浓度。换句话说,我想通过重叠的 bin 来平滑数据(这样一个数据点可以被不同的连续 bin 计算多次)。
我知道 hist2d 具有“权重”的输入选项,但这只会使数据点在其 bin 中更加“重要”。
简化的代码如下,我可以澄清任何需要的东西。
python - Python + 将百分位数的等高线添加到 2D 直方图
我有一个代码(见下文)来绘制密度散点图(2D 直方图)。
我现在想添加代表数据数量的 7 个选定百分位数(5%、10%、25%、50%、75%、90%、95%)的等高线。
我已经在谷歌上搜索解决方案太久了,但没有找到任何真正适用于我的问题的解决方案。那么请问,我该怎么做呢?
f# - F# 数组到二维直方图
我正在使用带有 F# 的 OxyPlot。我有创建单个参数直方图并绘制它的代码。我的轮廓形式的双参数直方图代码太耗时了。我想要一种将两个向量或数组映射到二维直方图的有效方法。我包括我的常规直方图代码。
所以,我正在寻找 dataArray.[a…a, ], dataArray[b…b, ] 并将它们放入特定分辨率的 bin 中以创建直方图 [x,y]。OxyPlot 需要直方图才能创建轮廓。
想象一下两个数据数组,一个称为 Alexa647-H,另一个称为 BV786-H。每个数组包含 100,000 个介于 0 和 10,000 之间的整数。您可以在 OxyPlot 中将这些数组绘制为点图。这很简单,只需为 X 轴绘制一个数组,为 Y 轴绘制一个数组。我在下面包含了一个情节。
我的问题涉及使用相同的数据创建等高线图。为此,我需要首先确定一个分辨率,例如为方便起见 100x100。因此,我想得到一个二维数组调用 hist2(100,100)。该数组基本上是 10,000 个大小为 1000x1000 的 bin。每个 bin 包含属于特定范围的元素的计数 - 一个 2D 直方图。
OxyPlot 中的编码示例以数学方式生成峰阵列。我想生成轮廓输入峰值数组作为上面的轮廓,而不是。
我希望这能解决问题。
大学教师
python - seaborn 联合图颜色(按密度)
我正在为具有数百万个数据点的一些数据制作二维直方图。matplotlib.hist2d(x,y,bins,norm=LogNorm())
效果很好并在大约 5 秒内生成一个图,但我喜欢seaborn.jointplot()
. 如何使用附图seaborn.jointplot()
中的点的对数密度为点着色matplotlib.hist2d()
?使用 KDE 花费的时间太长(大约一分钟左右我就放弃了),而且我有很多图形要创建。所以“获得”颜色的时间是一个因素。或者,如何将边际直方图添加到matplotlib.hist2d()
?
plt.hist2d(x,y,100,norm=LogNorm(),cmap='jet')
sns.jointplot(x=x, y=y)
python - 来自 matplotlib.pyplot.hist2d 的奇怪“计数”矩阵
我想从 2dhist 函数中获取 2d numpy 数组。获得计数后,我想在 pyplot.imshow() 函数中绘制数据以进一步添加一些信息。允许出现在我的列表中的整数介于 0 和 11 之间(因此有 12 个 bin)。
但是,我得到一个奇怪的矩阵。
如果我们仔细查看数据列表,我们会看到例如整数 0 从未出现。因此,如何才能成为第一列中的条目?
我非常感谢你的内心。谢谢你。
python - 如何进行 matshow 或 imshow,但将轴值显示为 bin 边界(即,就像在 2d 频率/密度图上一样)
我需要做一个二维密度样图。但是我自己计算“密度”。所以基本上我有一个NxM
值数组,我只能用plt.matshow
(或 imshow)绘制。
但是,在这种情况下,轴值是图中的像素,而我真的希望它显示一些用户定义的值。所以我手动更改上面的刻度标签。
这仍然留下一个问题。matshow
仍然认为刻度标签正在标记图像中的“像素”,因此刻度标签打印在每个像素正方形的“中间”。然而,就像我说的那样,我真正想要绘制的更像是一个密度图,所以每个“像素正方形”代表 x,y 空间中的一个 bin。将刻度标签打印在方形边缘上会更有意义,就像它为直方图和频率图所做的一般方式一样。
我应该继续为此使用 matshow 还是有其他功能可以做到这一点?例如,我可以使用plt.hist2d
但手动设置“高度”而不输入数据作为一堆样本吗?否则,我如何plt.matshow
按照我想要的方式放置刻度标签?