- plot.r - построение графиков из исходного csv файла, в котором первым столбцом идет unix timestamp.
- R;
- R-package ggplot2;
- R-package reshape;
- R-package optparse;
% Rscript ./plot.r -h
% head -5 traffic.csv
1359417600 3.10178077221
1359417601 0.0703502446413
1359417602 0.841289497912
1359417603 2.81170980632
1359417604 4.695410721
- Первый столбец - unix timestamp;
- Второй столбец - трафик, отданный сервером за секунду.
построение графика будет следующим:
% Rscript ./plot.r --title "Traffic" -x "Time" -y "Gbps" -f ~/traffic.csv
Если нам не нужна подобная точность и мы хотим "сгладить" график, посчитав среднее значение за каждые 10 минут - 6462 ожно воспользоваться параметром -s 600.
Полученный график будет иметь следующий вид:
% Rscript ./plot.r --title "Traffic" -x "Time" -y "Gbps" -f ~/traffic.csv -s 600
% head -5 traffic.csv
1359417540 0.00516529070834 0.0103306
1359417600 1.77852939044 3.55706
1359417660 1.86139923508 3.7228
1359417720 1.9601611151 3.92032
1359417780 1.86309986127 3.7262
- Первый столбец - unix timestamp;
- Второй столбец - трафик, отданный сервером 1 за секунду;
- Третий столбец - трафик, отданный сервером 2 за секунду;
% Rscript ./plot.r --title "Traffic" -x "Time" -y "Gbps" -f ~/traffic.csv -s 600
Если из всего csv файла нам нужен только график по одному столбцу с данными - нужно использовать опцию -c:
% Rscript ./plot.r --title "Traffic" -x "Time" -y "Gbps" -f ~/traffic.csv -s 600 -c 2
Нумерация столбцов с данными начинается с двойки:
1 2 3
1359417540 0.00516529070834 0.0103306
1359417600 1.77852939044 3.55706
Так же поддерживаются перечисления столбцов через запятую:
% Rscript ./plot.r --title "Traffic" -x "Time" -y "Gbps" -f ~/traffic.csv -s 600 -c "2,3"
В данном случае последний график эквивалентен вызову plot.r без аргумента -c.
Графика из последнего примера: ![alt text] plot