gnuplot: построение данных из нескольких входных файлов в одном графике
Я пытаюсь построить график с помощью gnuplot.У меня есть 6 текстовых файлов.Каждый текстовый файл содержит два столбца.Первый столбец представляет время в секундах(это число с плавающей запятой).Второе-порядковый номер.Я хочу построить график времени против порядкового номера в одном графике для всех шести файлов.Я использую этот файл для этого.
set terminal png
set output 'akamai.png'
set xdata time
set timefmt "%S"
set xlabel "time"
set autoscale
set ylabel "highest seq number"
set format y "%s"
set title "seq number over time"
set key reverse Left outside
set grid
set style data linespoints
plot "print_1012720" using 1:2 title "Flow 1",
plot "print_1058167" using 1:2 title "Flow 2",
plot "print_193548" using 1:2 title "Flow 3",
plot "print_401125" using 1:2 title "Flow 4",
plot "print_401275" using 1:2 title "Flow 5",
plot "print_401276" using 1:2 title "Flow 6"
Где мои файлы:
-
print_1012720
-
print_1058167
-
print_193548
-
print_401125
-
print_401275
print_401276
это дает странную ошибку, как показано ниже:
"сюжет.plt", строка 24: неопределенная переменная: plot
Я что-то делаю wrong.Is можно построить входные данные из разных файлов в одном графике.
3 ответа:
ты так близко!
изменения:
plot "print_1012720" using 1:2 title "Flow 1", \ plot "print_1058167" using 1:2 title "Flow 2", \ plot "print_193548" using 1:2 title "Flow 3", \ plot "print_401125" using 1:2 title "Flow 4", \ plot "print_401275" using 1:2 title "Flow 5", \ plot "print_401276" using 1:2 title "Flow 6"
to:
plot "print_1012720" using 1:2 title "Flow 1", \ "print_1058167" using 1:2 title "Flow 2", \ "print_193548" using 1:2 title "Flow 3", \ "print_401125" using 1:2 title "Flow 4", \ "print_401275" using 1:2 title "Flow 5", \ "print_401276" using 1:2 title "Flow 6"
ошибка заключается в том, что gnuplot пытается интерпретировать слово "plot" как имя файла для построения, но вы не назначили никаких строк переменной с именем "plot" (что хорошо-это было бы очень запутанно).
вы можете обнаружить, что циклы gnuplot for полезны в этом случае, если вы соответствующим образом настроите имена файлов или заголовки графиков.
например
filenames = "first second third fourth fifth" plot for [file in filenames] file."dat" using 1:2 with lines
и
filename(n) = sprintf("file_%d", n) plot for [i=1:10] filename(i) using 1:2 with lines