Algorithm-ClusterPoints
view release on metacpan or search on metacpan
example/cluster.pl view on Meta::CPAN
chomp;
my ($x, $y) = split;
$clp->add_point($x, $y);
}
my @clusters_ix = $clp->clusters_ix;
print Data::Dumper->Dump([\@clusters_ix], ['clusters_ix']);
for my $i (0..$#clusters_ix) {
print( join( ' ',
"cluster $i:",
map {
my ($x, $y) = $clp->point_coords($_);
"($_: $x, $y)"
} @{$clusters_ix[$i]}
), "\n"
);
}
my @clusters = $clp->clusters;
print Data::Dumper->Dump([\@clusters], ['clusters']);
__DATA__
0.43 0.62
0.50 0.65
0.49 0.32
0.95 0.20
0.09 0.09
0.61 0.55
0.72 0.42
0.83 0.11
0.62 0.71
0.52 0.97
0.44 0.53
0.01 0.08
0.55 0.32
0.30 0.68
0.67 0.47
0.27 0.62
0.12 0.15
0.28 0.65
0.37 0.38
0.16 0.35
0.66 0.33
0.16 0.79
0.83 0.27
0.77 0.13
0.73 0.07
0.36 0.44
0.53 0.27
0.50 0.19
0.61 0.17
0.47 0.28
0.13 0.15
0.55 0.58
0.36 0.58
0.62 0.30
0.64 0.97
0.88 0.61
0.12 0.24
0.35 0.18
0.40 0.54
0.90 0.20
0.14 0.74
( run in 0.341 second using v1.01-cache-2.11-cpan-df04353d9ac )