gunplot 柱状图--y轴logscale使用
gunplot画柱状
将y轴数字设置为对数形式增长,并且均匀分布,与普通方法的不同主要在以下几条命令:
set yrange [0.1:100] :设置y轴范围,注意,这里范围的开头不能是0,否则会报错: y range must be greater than 0 for log scale。log的底数不能为0
set logscale y :将y轴设置为指数形式
set format y “%.0e”:设置精度
set ytics (“10^{-1}” 0.1,“10^0” 1,“10^1” 10,“10^2” 100):在对应的刻度上设置名称(^符号之后如果不止有一个字符,需要用花括号括起来)
set ytics font ‘times.ttf,20’:设置y轴名称字体以及字号
示例:
代码:
set terminal postscript eps color enhanced
set yrange [0.1:100]
set logscale y
set format y “%.0e”
set ylabel “y(ms)” font ‘,20’
set xlabel “x” font ‘,20’
set output “test.eps”
unset tics
set ytics (“10^{-1}” 0.1,“10^0” 1,“10^1” 10,“10^2” 100)
set xtics (‘5000’ 0,‘10000’ 1, ‘30000’ 2, ‘50000’ 3, ‘70000’ 4, ‘90000’ 5)
set xtics font ‘times.ttf,20’
set ytics font ‘times.ttf,20’
set style histogram clustered gap 1
set style fill pattern border -1
set key right #关键字的位置
plot ‘1.dat’ using 1 with histogram ls 2 title ‘1’, ‘1.dat’ using 2 with histogram ls 3 title ‘2’, ‘1.dat’ using 3 with histogram ls 3 title ‘3’
数据:
0.331189 17.2728 59.3765
0.301 11.972 44.0978
0.286001 8.05831 31.7239
0.271989 6.50244 15.8223
0.261181 5.53995 15.354
0.262341 4.9641 12.0985
输出图片为:
其他技巧
坐标轴标签的位置:
有时候画图,Y轴的刻度值数字会比较长,或者字体设置偏大,会导致标签和刻度重合,这时候需要一条命令,将Y轴标签向左移动。
set ylabel “Avg Query Time(ms)” font ‘,24’ offset -2,0,0
在这条命令中,font是设置标签的字体和字号,offset就是在设置标签的位置,3个数字分别表示与X,Y,Z轴的偏移位置。上述例子中表示的是,像X轴反方向,也就是左侧偏移两个字符。