2016-08-23 4 views
0

Я разрабатываю скрипт, который читает историческую информацию о мощности оборудования, и он печатает кривую с этими точками. Я установил ось x для отображения даты и времени. Я сделал это таким образом:Gnuplot не печатает год по оси x

# source and filename are both variable names. 
set xdata time 
set terminal pngcairo enhanced font "arial,10" fontscale 1.0 size 900, 350 
set output filename 
set key bmargin left horizontal Right noreverse enhanced autotitles box linetype -1 linewidth 1.000 

# We set the datetime format 
set timefmt '"%Y-%m-%d %H:%M:%S"' 

set datafile missing 'None' 
set style line 1 lt 2 lc rgb 'blue' lw 1 
set style line 2 lt 2 lc rgb 'green' lw 1 
set style line 3 lt 2 lc rgb 'red' lw 1 
set style line 4 lt 2 lc rgb 'green' lw 1 
plot source using 1:2 ls 1 with lines, source using 1:3 ls 2 with lines,source using 1:4 ls 3 with lines 

Это прекрасно работает, но метки по оси x, которые не показывают год. Почему это происходит? Я не установил должным образом? Сначала создаю файл .dat, который содержит строку для каждой точки. После того, как я называю сценарий GNUPLOT из питона, то мог бы файл, кажется:

..................... 
"2016-08-22 04:00:00" 1812.44580078 2600.0 800 
"2016-08-22 04:15:00" 1859.58398438 2600.0 800 
"2016-08-22 04:30:00" 1785.85595703 2600.0 800 
..................... 

Это как графики выглядит следующим образом:

enter image description here

Как я могу добиться этого? Заранее спасибо.

ответ

1

timefmt устанавливает только формат входного времени. Чтобы установить формат этикеток, используйте

set format x "%Y-%m-%d %H:%M:%S" 
+0

Спасибо! этот формат должным образом соответствует дате. –

Смежные вопросы