gnuplot点线风格

假如我们有这样的一个点线图:
gnuplot点线风格_第1张图片
这里的数据点是由小“十”字表示的,但是似乎太小了,有点看不清楚。另外,如果我们想在做报告时把这个图用到幻灯片中去,小“十”字很不醒目,这时候我们可能想用其他的标志。gnuplot里面有几个控制点和线画法风格的参数:

  • linestyle 连线风格(包括linetype,linewidth等)
  • linetype 连线种类
  • linewidth 连线粗细
  • linecolor 连线颜色
  • pointtype 点的种类
  • pointsize 点的大小
    比如:
gnuplot> plot "datafile.dat" with linespoints linecolor 3 linewidth 2 pointtype 7 pointsize 2

gnuplot点线风格_第2张图片
2、3、7这些数字是代表不同画法风格的代码,具体某个数字代表什么意思,如果想知道这些数字究竟代表什么意思,可以输入命令:

gnuplot> test

这样当前 terminal 会输出一个测试图:
gnuplot点线风格_第3张图片

测试图中包含当前 terminal 的风格代码实例。例如,左下角显示的是连线粗细,右边显示的是色彩和数据点显示风格对应代码。

绘制柱状图:

set yrange [0:100]
set ylabel "Early terminate ratio (%)"
set xlabel "Length of S"
set output "fuck.png"
unset tics
set ytics 0,20,100
set xtics ('40' 0, '80' 1, '120' 2, '160' 3, '200' 4)
#set xtics ('10' 0, '20' 1, '30' 2, '40' 3, '50' 4)

#set xtics center offset 0,-1
set style histogram clustered gap 1   #//gap 2表示裂隙宽等于矩形宽度的2倍
set style fill pattern border -1 #//fill solid表示完全填充柱体,后面跟0-1的参数,1表示完全填充,border 表示柱体的边线颜色,-1表示黑色。这里还可以加参数pattern
plot 'ETR.data' using 1 with histogram ls 2 title 'n = 40', 'ETR.data' using 2 with histogram ls 3 title 'n = 120', 'ETR.data' using 3 with histogram ls 3 title 'n = 200'#//using 1 表示d2.data数据中的第一列,using 1:3表示第一列和第三列
pause -1    #使运行结果永久停留

gnuplot点线风格_第4张图片

柱状图 一种加数据标签的版本:

set yrange [0:100]
set ylabel "清洗后脏数据率(%)"
set xlabel "不同的数据集"

unset tics
#set ytics 0,0.01,0.3
set xtics ('CMOR' 0, 'NOD' 1, 'CFOFR' 2)
#set xtics ('10' 0, '20' 1, '30' 2, '40' 3, '50' 4)
set yrange [0: 0.3]   # 图上显示的y的范围 

set label '0.14' at -0.3, 0.145
set label '0.17' at 0.05, 0.175  

set label '0.09' at 0.74, 0.095
set label '0.07' at 1.05, 0.075  


set label '0.21' at 1.75, 0.215
set label '0.25' at 2.05, 0.255  

#set xtics center offset 0,-1
set style histogram clustered gap 1   #//gap 2表示裂隙宽等于矩形宽度的2倍
set style fill pattern border -1 #//fill solid表示完全填充柱体,后面跟0-1的参数,1表示完全填充,border 表示柱体的边线颜色,-1表示黑色。这里还可以加参数pattern
plot 'ETR2.data' using 1 with histogram ls 2 title '本文方法', 'ETR2.data' using 2 with histogram ls 3 title 'Trillum'#//using 1 表示d2.data数据中的第一列,using 1:3表示第一列和第三列
pause -1

gnuplot点线风格_第5张图片

你可能感兴趣的:(gnuplot点线风格)