#! perl -slw use strict; use Data::Dump qw[ pp ]; ## Input to separate arrays my( @xs, @ys ); ( $xs[ @xs ], $ys[ @ys ] ) = split while ; ## cross xs with ys and get pop count of pairings my %freq; for my $x ( @xs ) { ++$freq{ sprintf "%.2f %.2f", $x, $_ } for @ys; } #pp \%freq; ## most plotters require input as vectors, so split them out my( @rx, @ry, @rz ); ( $rx[ @rx ], $ry[ @ry ], $rz[ @rz ] ) = ( split(), $freq{ $_ } ) for keys %freq; ## print them as line vectors print "@rx"; print "@ry"; print "@rz"; __DATA__ 1 2 3 4 5 6 7 8 9 0 #### C:\test>1163636 9.00 3.00 9.00 5.00 7.00 9.00 1.00 7.00 3.00 1.00 1.00 9.00 3.00 3.00 5.00 9.00 3.00 1.00 5.00 7.00 7.00 5.00 7.00 1.00 5.00 6.00 8.00 0.00 8.00 2.00 8.00 2.00 6.00 2.00 8.00 4.00 2.00 4.00 6.00 0.00 4.00 0.00 6.00 4.00 8.00 4.00 2.00 0.00 0.00 6.00 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1