Я пытаюсь передать выходные данные хэша столбца 2x в простую диаграмму, используя gnuplot.
По какой-то причине ему не нравится что-то в моем хеше, или по какой-то причине встроенные данные не верны.Я получаю только первый ряд, и он выдает несколько ошибок.
open my $out,'|-','gnuplot';
say $out 'unset key';
say $out 'set auto x';
say $out 'set ylabel "Fail Count"';
say $out "set style histogram gap 5";
say $out "plot '-' using 2:xtic(1)";
foreach (keys %fail_counts) {
if ($fail_counts{$_} > 1) {
say $out "$_ $fail_counts{$_} ";
}
}
say $out 'e';
flush $out;
<STDIN>;
close $out;
Вот как выглядит мой хэш:
blah1 8
blah2 8
blah3 65
blah4 39
blah5 23
blah6 12
Ошибки:
Предупреждение: пустой диапазон x [0: 0], настройка на [-1: 1]
Предупреждение: пустой yдиапазон [8: 8] с настройкой на [7,92: 8,08]
Вот как заполняется хеш, это просто табуляция отдельных строк данных об ошибках:
#sum and plot the categories
%fail_counts = ();
foreach $fail (@fail_array) {
@temp_array=split/\s+/,$fail;
if (exists $fail_counts{$temp_array[4]}) {
$fail_counts{$temp_array[4]} = $fail_counts{$temp_array[4]} + 1;
} else {
$fail_counts{$temp_array[4]} = 1;
}
}