gnuplot是画图常用的软件,本文主要介绍Windows系统下利用wgnuplot画图的基础操作。
gnuplot的使用方法十分简便,如果想要绘制某一函数f(x)的图像,直接在指令窗口输入plot f(x)就可以了。例如想绘制正弦函数y=sin(x)的图像,在指令窗口输入plot sin(x)即可。本文主要通过实例总结了利用文件中储存的数据作图的方法。
以这个画图语句为例:
p [0:100] [-1:1] "a.txt" u 1:2 title "sin" w lp lt 1 lw 2 lc "green" pt 4 ps 2\
,"a.txt" using 1:3 title "cos" w lp lt 0 lw 2 lc "blue" pt 7
该语句使用了简写,第一行如果写成下面的形式更便于理解:
plot "a.txt" using 1:2 title "sin" with linepoint linetype 1 linewidth 2 linecolor "green" pointtype 4 pointsize 2\
接写来,我们再来分析具体的每个参数都是什么意思:
1、p [0:100] [-1:1]
p 即 plot,后面的两项分别为图片显示的x轴、y轴的坐标范围。
2、"a.txt" using 1:2
即用“a.txt”文件中的第1、2列数据作图,其中第1列数据作为横坐标,第2列数据作为纵坐标。
3、title "sin"
把这条曲线命名为“sin”,此处的名称为该曲线在图例中显示的名称,并不是图片的标题,图片标题需要再绘图结束之后另外设置。
4、w lp
即 with linepoint ,把数据点描出来,并且将数据点连线。with 后的属性参数有多个选择,对应不同的作图方式(style)。在指令窗口输入 hplp with 或者 help style就可以查到可供选择的 style 参数。常用的作图方式参数及对应含义如下表所示:
style参数 | 简写 | 对应含义 |
---|---|---|
line | l | 将相邻点连线 |
point | p | 将每一点用一符号标记 |
linepoint | lp | 将每一点用一符号标记,并将相邻点连线 |
impulses | i | 将每一点画一垂直线至x轴 |
dots | d | 将每一点绘一细点 |
steps | st | 用垂直线及水平线各一条来连接两点,形成台阶状图形 |
errorbars | e | 对每一点坐标值(x,y),画一由(x,ylow) 至(x,yhigh) 的线段。并在线段两端做上 tic mark |
boxes | boxes | 以x坐标为中心做柱状图 |
boxerrorbars | boxerrorbars | 结合errorbars与boxes两者功能 |
5、lt 1
即 linetype 1 ,规定了连线的类型,-1对应黑虚线,0对应黑虚线,大于0的整数对应不同颜色的实线。1为紫色,2为绿色,3为蓝色,4为橙色、5为黄色、6为深蓝色、7为红色、8为黑色,大于8的数字对应的颜色与其对8的余数对应的颜色相同。
6、lw 2
即 linewidth 2 ,规定了线的宽度,数字越大,线越宽。
7、lc "green"
即 linecolor "green" ,规定了线的颜色。除了之前利用 lt 来规定线的颜色之外,也可以通过这个语句单独设置线的颜色,可供选择的颜色比 lt 中的要多很多。在指令窗口输入 show colorname 就可以查看不同的RGB色对应的名称。
8、pt 4
即 pointtype 4,规定了标记点的类型。不同数字对应的标记点如下:
数字 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
标记 | 无 | + | × | ❈ | □ | ■ | ○ | ● | △ | ▲ | ▽ | ▼ | ◇ | ◆ | 空心 倒正五边形 | 实心 倒正五边形 |
大于15的整数对应的标志与其对15的余数所对应的标志是一样的。
9、ps 2
即 pointsize 2,规定了标志的大小,数字越大,标志越大。标志的颜色和线的颜色相同。
10、\ ,
不同数据曲线之间用逗号隔开,不同行之间的指令用 \ 连接起来。