Gnuplot是一个命令行的交互式绘图工具(command-driven interactive function plotting program)。类似于R语言中ggplot。下面是小编整理的一些干货:
set term pngcairo size 1500,300
set output 'out.png.png'
set yrange [0:50]
set xrange [1:500001]##set xtics axis 1,25000.05,500001###设置最小刻度、步长,最大刻度以及让刻度在坐标轴外边(axis,不加则刻度在里面)
set xtics 25000.05 ###设置步长
unset key
set border
set xlabel "position"
set ylabel "depth or insert size"
set xtics("5000009" "1","5249999" "25000","5499999" "50000","5749999" "75000","5999999" "100000","6249999" "125000","6499999" "150000","6749999" "175000","6999999" "200000","7249999" "225000","7499999" "250000","7749999" "275000","7999999" "300000","8249999" "325000","8499999" "350000","8749999" "375000","8999999" "400000","9249999" "425000","9499999" "450000","9749999" "475000","10000000" "500001")
set xtics scale 0.5,0.25 font 'Time-Romn,"12"' ####scale设置刻度线
plot "good2" using 1:2 with lines lw 2 lc 3 lt title "keys" ####默认为点; with lines表示线;with linespoints点线结合;title为图例
plot ’good2’ using 1:3 with filledcurves y1=0#### filledcurves色彩填充,并以y1=0作为界限;可以设置填充曲线和某条水平或竖直直线之间的区域,默认自我封闭。y1也可以为某一点如xy=6,60,
plot ’good2’ using 1:2:3 with filledcurves below,’ ’using 1:2:3 with filledcurves above #####当第一组数据小于第二组时使用一种颜色,而第一组数据大于第二组时使用另一种颜色,。plot 命令第二部分的数据文件名为空,因为该文件和第一部分相同故可以把文件名省略。
set style fill transparent solid 0.4 noborder#####transparent 参数,相应的solid 后面的数字就变成了表示透明度(alpha值)的参数(0-1)。望填充区域不要有边线(曲线本身),使用noborder;
set output
set mxtics 2 ########设置分刻度值,2表示要将主刻度分成几份
set grid ########开启栅格
set label 1 "Hello" at 2,0.4 left textcolor rgb "#FF0000"########图标内容标注
set xlabel offset -1,0 ######## will change only the x offset of the title, moving the label roughly one character width
set key box
########箭头#########
nohead, head, backhead, heads分别表示:没有箭头(其实就是线段),箭头在终点,箭头在起点,双向都有箭头。
size <length>,<angle>,<backangle>箭头尺寸,默认长度单位为first 坐标单位长度。下图中A,B,C 分别代表<length>,<angle>,<backangle>
filled, empty, nofilled 箭头的三种填充风格
set arrow 1 from 2,1.05 to 0.3,1 filled size 0.5,15,60 lw 2####### arrow 1其中的1表示第一个画箭头的,想画多个可以依次递增2,3.。。。。
######作图位置扩大#######
set rmargin 4##########命令用于设置图像右边空白宽度,单位也是character。一般情况下,四边空白宽度都是自动设置的。现在我们在右边增加了label(箭头),而绘图显示区域不会因此自动扩大,这样会导致箭头无法完整显示,所以要手动改一下设置。相应的,上、左、下边的空白宽度,分别由tmargin,lmargin,bmargin 参数控制
########第2坐标轴的用法#########
为了兼顾两组数据。最好的解决方案是,让两个纵轴有相同数
目的分格,这样两套grid 也就重合了,开启任何一个栅格就可以了
set y2lable "气温(摄氏度)
set ytics nomirror
set y2tics
plot "good2.txt" u 1:2 w lp pt(point type) 5 lc rgbcolor "#2B60DE" axis x1y1 title(t:表示key,图例) "降水量" , "good.txt " u 1:3 w lp pt 7 lc rgbcolor "#F62817" axis x1y2 title(t) "气温"
############图例###########
set key center at 10,0.7######(left, right, top,bottom, center, inside, outside, lmargin, rmargin, tmargin, bmargin (, above, over, below and under)通过左右等大体位置进行初步定位,然后利用at定位到具体的位置上。
set key reverse ######把图例的名字和图线示例调换位置
set key box lw 2 lt ls ######给图例加上边框,可以选择ine_style,line_type和line_width
set key width 1 height 2######图例框的宽与高
set key Left/Right ######调整title 文字对齐方式(Left 或者Right,注意首字母大写)
set key spacing 1.2 ######调整图例行间隔
set key samplen 2 ######调整图线示例长度
#########数学处理#############
set logscale y ########命令用于指定对数坐标轴,
set logscale xy ########如果要使用双对数坐标
set format y "%.0e" #########%f小数格式,%e指数格式,%g根据长度自动选择%f或者%e,%t指数格式的有效数字部分,#%T指数格式的指数部分;各特殊字符之前的数字可以用于表示有效数字的精度。
#########多图模式#############
set multiplot layout 2,2###########可以同时画四张图片,排列为2乘2;最后,unset multiplot 命令退出多图模式。
set multiplot ###########开始画大图里面套小图步骤
unset key
plot ’spectrum.dat’ with lines#####打印大图
set xrange [660:740] ############取大图得部分x坐标画小图
set xtics 20 ############设置小图的x刻度步长
set yrange [200:2000] ############取大图得部分y坐标画小图
set ytics 500 ############设置小图的y刻度步长
set origin 0.2,0.4 ############用于设置绘图的原点.使用screen 坐标系统(不超过1)
set size 0.4,0.4 ############用于设置图像大小。使用screen 坐标系统(不超过1)
replot ############修改之后再次打印图片
unset multiplot ############退出多图模式