вторник, 22 декабря 2015 г.

График временного ряда (Gnuplot)

Задача - построить график, в котором по оси X - время.


Особенность временных графиков состоит в том, что нужно 1) указать, что по оси X у нас время, 2) указать формат времени в исходных данных 3) (опционально) указать формат в котором выводить метки времени.

Пример.

Часть исходных данных, дата в формате DD.MM.YYYY:

X Y
17.09.2015 133.93 
16.09.2015 133.13 
15.09.2015 116.66 
14.09.2015 160.53 
13.09.2015 173.30 
12.09.2015 151.89 
11.09.2015 139.71 
10.09.2015 131.75 
09.09.2015 141.32 

На графике дату будем отображать в формате YYYY-MM-DD:


Код скрипта:

reset;
G_dat     = '_dat.txt'
G_pic_w   = 1000
G_pic_h   = 800
G_Title   = "График временного ряда";
G_XLabel  = "X - Время";
G_YLabel  = "Значения Y";

set terminal wxt enhanced size 1000,500

set title  G_Title    font ",16";
set xlabel G_XLabel   font ",12";
set ylabel G_YLabel   font ",12";

set grid ytics xtics

set xdata time
set timefmt "%d.%m.%Y"
set format x "%Y-%m-%d"

plot G_dat using 1:2 with lines title columnhead(2)

Комментариев нет:

Отправить комментарий