public Canvas canvas() {
        Canvas canvas = new Canvas(getLowerBound(), getUpperBound());
        canvas.add(this);
        if (name != null) {
            canvas.setTitle(name);
        }
        return canvas;
    }
@Test
    public void testHistogram3D() throws Exception {
        System.out.println("Histogram 3D");

        double[] mu = {0.0, 0.0};
        double[][] v = { {1.0, 0.6}, {0.6, 2.0} };
        var gauss = new MultivariateGaussianDistribution(mu, Matrix.of(v));
        var data = Stream.generate(gauss::rand).limit(10000).toArray(double[][]::new);
        Histogram3D.of(data, 50, false).canvas().window();
    }