def test_correlations_3d(self):
data = np.random.multivariate_normal([0, 0, 1], [[1, 0.5, 0.2], [0.5, 1, 0.3], [0.2, 0.3, 1.0]], size=100000)
parameters = ["x", "y", "z"]
c = ChainConsumer()
c.add_chain(data, parameters=parameters, name="chain1")
p, cor = c.analysis.get_correlations(chain="chain1", parameters=["y", "z", "x"])
assert p[0] == "y"
assert p[1] == "z"
assert p[2] == "x"
assert np.isclose(cor[0, 0], 1, atol=1e-2)
assert np.isclose(cor[1, 1], 1, atol=1e-2)
assert np.isclose(cor[2, 2], 1, atol=1e-2)
assert cor.shape == (3, 3)
assert np.abs(cor[0, 1] - 0.3) < 0.01
assert np.abs(cor[0, 2] - 0.5) < 0.01
assert np.abs(cor[1, 2] - 0.2) < 0.01
评论列表
文章目录