Оповещение для новичков Я хочу в основном прочитать несколько файлов, чтобы извлечь из них некоторые данные. Я хочу преобразовать эти данные в хеш-таблицу, чтобы в конечном итоге создать гистограмму.
Вот тип файла, который я читаю. Все файлы намного больше и содержат намного больше записей:
> Name CPU Time CPU Load Percentage
>
> -----------------------------------------
>
> System 7962 3.00%
>
> Adobe Photoshop 6783 0.19%
>
> MSN Messenger 4490 0.01%
>
> Google Chrome 8783 0.02%
>
> Idle 120 94.00%
>
> =========================================
Вот мой актуальный код для Perl:
#!/usr/bin/perl
use warnings;
use Data::Dumper;
#Looping through the end of the file
while (<DATA>)
{
#Selecting only the CPU Processes
if (/(.*?)\s+\d+\s+(\d+\.\d+)\%/){
#Populating the hash with only Process name and % (eg: Idle 94.00%)
$cpu_util{ $1 } = $2;
}
}
#Assigning the axis labels to be pushed onto the graph
@xvalues = keys %cpu_util;
@yvalues = values %cpu_util;
}
Теперь я могу успешно стирать данные из нескольких файлов и отображать один график. Однако я бы хотел иметь возможность не только отображать только один график. Предоставьте пользователю возможность выбрать, какой процесс его интересует, а затем создать линейный график этих точек.
Однако я не совсем уверен, как это сделать. Я знаю, что все мои процессы хранятся в моем хэше через пары ключ / значение. Итак («Idle -> 94%») и т. Д. То, что я хотел бы сделать, это показать пользователю раскрывающийся список ... и он перечисляет все ключи в хэше. Когда пользователь выбирает определенный ключ, он генерирует для него GD :: Graph. Я предполагаю, что я создам графики для каждого ключа перед самим собой и сохраню их как изображения. Выбор определенного варианта просто связывает их с нужным изображением ...
Я читал в Интернете о реализации раскрывающегося списка с использованием CGI, но я не зашел слишком далеко. Я думаю о создании еще одной HTML-страницы с раскрывающимся списком, но я не уверен, как получить значения для динамического заполнения из хэша, хранящегося в Perl ..