我是 gnuplot 的新手,我遇到了问题:
我有2个不同的文本文件,第一个(file1.txt
)是这样的:
Switch,Port,BPS
S1,1,5464091.33
S1,3,5465677.33
S2,2,5463298.00
S2,3,5462729.67
S3,1,5461340.67
S3,3,5461772.33
我画" file1.txt"用直方图:
plot avg_file using 3:xticlabels(stringcolumn(1)."-".stringcolumn(2)) title columnheader
这很好。
现在我的file2.txt
包含一个值:
AVG_BPS
4844714.81
我想将此值绘制为上一个图形(直方图)上的恒定水平线。
这是我的完整脚本:
# Terminal definition (PNG image)
set term png
# Settings
set datafile separator ","
set output 'myplot.png'
set style data histogram
set style histogram cluster gap 1
set style fill solid border -1
set boxwidth 1
# Graph and Axis titles
set title "BPS"
set xlabel "Switch-Port"
set ylabel "bits-per-second"
# Plot
plot "file1.txt" using 3:xticlabels(stringcolumn(1)."-".stringcolumn(2)) title columnheader
以下是myplot.png
:
由于
答案 0 :(得分:1)
最好的做法是stats
:
stats 'file2.txt' u 1
hor_value=STATS_min
然后添加到你的情节中:
plot "file1.txt" using 3:xticlabels(stringcolumn(1)."-".stringcolumn(2)) title columnheader, hor_value
或者在顶部(最后一个图之前)放一条线:
set arrow nohead from graph 0, hor_value to graph 1, hor_value front