use warnings; my %myhash = (); my @data = (); chomp(@data = ); foreach (@data) { $myhash{$_}++; } foreach $k (sort {$a <=> $b} keys %myhash) { print "$k : ". '*' x $myhash{$k} . "\n"; } __DATA__ 1 2 3 3 2 2 1 2