如何绘制不同文件中的直方图和常量线

时间:2016-01-25 11:55:30

标签: plot gnuplot line histogram

我是 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

由于

1 个答案:

答案 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