我有一个包含一些数据的文件,如下所示。
1 0x5212cb03ca115ac0 0x3665fb5f1ac1
2 0x5212cb03ca115cc0 0x3665fb5f1ac7
3 0x5212cb03ca115ea0 0x3665fb5f1acd
4 0x5212cb03ca1160c0 0x3665fb5f1ad3
5 0x5212cb03ca1162a0 0x3665fb5f1ad9
6 0x5212cb03ca1164c0 0x3665fb5f1ade
7 0x5212cb03ca1166a0 0x3665fb5f1ae4
8 0x5212cb03ca1168a0 0x3665fb5f1aea
9 0x5212cb03ca116aa0 0x3665fb5f1af0
10 0x5212cb03ca116ca0 0x3665fb5f1af6
11 0x5212cb03ca116ea0 0x3665fb5f1afc
12 0x5212cb03ca1170a0 0x3665fb5f1b02
13 0x5212cb03ca117280 0x3665fb5f1b08
14 0x5212cb03ca117480 0x3665fb5f1b0e
15 0x5212cb03ca117680 0x3665fb5f1b14
16 0x5212cb03ca1178a0 0x3665fb5f1b1a
17 0x5212cb03ca117a80 0x3665fb5f1b20
18 0x5212cb03ca117c80 0x3665fb5f1b26
19 0x5212cb03ca117e80 0x3665fb5f1b2c
20 0x5212cb03ca118080 0x3665fb5f1b31
21 0x5212cb03ca118280 0x3665fb5f1b37
22 0x5212cb03ca118480 0x3665fb5f1b3d
我正在尝试在column 1 AND column 2
和column 1 and column 3
之间绘制图表。
现在第2列和第3列中的值严格按升序排列。我希望以第2列和第3列的ROW 0作为基值OR'0'的方式缩放图形。
我想要两个图表
'第1列和第2列'和'第1列和第3列'将在同一图表中绘制,以便我可以比较两个图形的斜率。我正在使用的模板plt文件如下所示
#!/bin/bash
set terminal pngcairo size 1280,960 enhanced font 'Verdana,10'
set xlabel "seq number"
set ylabel "timestamp"
set title "ts vs sequence number"
set key reverse Left outside
set grid
set pointsize 1.0
set style data linespoints
set output 'erf_ts_plot.png'
plot "output.txt" using 1:2 title "erf_ts"
set output 'ixia_ts_plot.png'
plot "output.txt" using 1:3 title "ixia_ts"
~
答案 0 :(得分:2)
要提取您可以使用的第一行的值,例如stats
命令:
stats "output.txt" every ::::0 using 2:3
every ::::0
将命令限制为第一行,并使用using
语句获取指定表达式的统计信息。在您的情况下,第二列的值存储在STATS_min_x
变量中,STATS_min_y
变量中的第三列。
要将两个图形合二为一,您只需要使用一个plot
命令,两个图形用逗号分隔。完整的脚本如下所示:
set terminal pngcairo size 1280,960
set xlabel "seq number"
set ylabel "timestamp"
set title "ts vs sequence number"
set key reverse Left outside
set grid
set pointsize 1.0
set style data linespoints
stats "output.txt" every ::::0 using 2:3
set output 'erf_ts_plot.png'
plot "output.txt" using 1:($2 - STATS_min_x) title "erf_ts",\
"" using 1:($3 - STATS_min_y) title "ixia_ts"
结果是:
我假设ts
是下标,然后必须在括号中才能这样设置。否则只有t
是下标。