Гнуплот со временем по оси X - PullRequest
0 голосов
/ 23 января 2020

У меня есть вопрос, связанный со старым сообщением Дата / время Gnuplot по оси x .

Мой файл похож. У меня есть файл данных CSV, который я хочу построить, который был взят за несколько дней. Я использую формат даты / времени "% b% d% Y% H:% M:% S", но хочу отобразить все данные за 24 часа, то есть за время суток.

Любые предложения о том, как подойти к этому (без изменения моего формата CSV). Способ создания значения путем вычитания «% b% d% Y» из «% b% d% Y% H:% M:% S», возможно?

Я работал только с gnuplot для пару дней и я все еще в мрачном возрасте относительно его синтаксиса. Спасибо

1 Ответ

0 голосов
/ 28 января 2020

Если я понимаю ваш вопрос, вы хотите отобразить некоторые временные данные, где вы в основном хотите отобразить их как функцию времени дня. Если сама дата не важна для вас, я имею в виду, например, окраску или маркировку дня, тогда просто игнорируйте день и установите формат времени "%H:%M:%S", начиная со столбца 4.

Код:

### plot 
reset session

# example data
$Data <<EOD
Jan 27 2020 00:13:00   1.12
Jan 27 2020 12:22:00   2.23
Jan 27 2020 17:45:00   3.34
Jan 28 2020 01:13:00   1.23
Jan 28 2020 10:24:00   2.34
Jan 28 2020 20:35:00   3.45
Jan 29 2020 02:12:00   1.34
Jan 29 2020 13:23:00   2.45
Jan 29 2020 22:34:00   3.56
EOD

myTimeFmt = "%H:%M:%S"
set format x "%H:%M" time

plot $Data u (timecolumn(4,myTimeFmt)):5 w p pt 7 lw 2 lc rgb "red" notitle
### end of code

Результат:

enter image description here

...