Использование gnuplot вместо excel для построения ответов пинга - PullRequest
0 голосов
/ 15 января 2020

У меня есть набор данных из ping, состоящий из метки времени и времени в мс, ответа ping. Отметка времени колеблется от 08:29:42 и заканчивается в 09:33:54. Между отметкой времени и откликом пинга есть запятая. Вот пример реального файла:

08:29:42, 4.24

08:29:43, 117

08:29:44, 141

08:29:45, 266

08:29:46, 292

08:29:47, 109

При импорте текстового файла в Excel, выделении столбцов A и B и вставке линейной диаграммы я получаю следующее:

Excel Graph

Желательно держаться подальше от Excel, и я надеялся использовать для этого gnuplot. В частности, потому что данные ping были собраны скриптом bash, и я мог добавить функциональность gnuplot к тому же скрипту для автоматизации вещей.

Взяв тот же файл и загрузив его в gnuplot, с помощью следующих команд :

set term png

set out "gnuplot graph.png"

plot 'ping.txt' with lines

Я получаю следующий вывод:

график gnuplot

Я не вижу рядом с деталями в gnuplot, которые я вижу в Сюжет Excel. Кроме того, время на оси X колеблется только с 08:00 до 09:00. Я хотел бы, чтобы график взял весь диапазон из текстового файла и построил соответствующий график.

Что я делаю неправильно в gnuplot, чтобы выходные данные были такими разными?

1 Ответ

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

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

set xdata time
set timefmt "%H:%M:%S"
plot "ping.txt" using 1:2

Редактировать:

Чтобы использовать линии вместо точек, добавьте with lines в конец своей команды построения:

set xdata time
set timefmt "%H:%M:%S"
plot "ping.txt" using 1:2 with lines

Также я заметил, что данные, которые вы вводите в свой вопрос, содержат пустые строки, разделяющие точки данных. Это приведет к тому, что ваши строки не будут отображаться. Я настоятельно рекомендую переформатировать ваш CSV, чтобы убрать пустые строки.

...