public static SammonMapping of(double[][] proximity) {
        return of(proximity, new Properties());
    }
@Test
    public void test() {
        System.out.println("Sammon's Mapping");

        double[][] points = {
                {-1921.9111, -1830.4309},
                {759.7598, -606.0879},
                {-80.1989, 443.366},
                {106.2067, 512.101},
                {484.4129, 477.3046},
                {-295.3324, 445.0549},
                {-543.941, 1091.5882},
                {7.4096, -269.6847},
                {1942.8039, -727.8288},
                {-626.7153, 721.5507},
                {-185.8613, 658.2859},
                {1916.6406, -83.5842},
                {149.485, -217.709},
                {1372.7065, -349.7255},
                {285.2568, -514.7278},
                {-273.1086, -426.4983},
                {-569.246, -106.5333},
                {161.4922, 261.1512},
                {-698.6729, -1023.6605},
                {-951.8776, 1716.5056},
                {-1039.3089, -170.4371}
        };

        SammonMapping sammon = SammonMapping.of(Eurodist.x);
        assertEquals(0.00941, sammon.stress, 1E-5);

        for (int i = 0; i < points.length; i++) {
            System.out.println(Arrays.toString(sammon.coordinates[i]));
            //assertArrayEquals(points[i], sammon.coordinates[i], 1E-4);
        }
    }