本文介绍gnuplot中绘制二维曲线图的一些基本流程与参数设置。
gnuplot绘制曲线图包括两类:
函数绘图。指定函数定义区域,绘制函数曲线
数据绘图。读入数据文件,绘制数据分布曲线
二维曲线图是最简单,也是最常用的图形形式,常用于表达两个物理量之间的变换规律。如下面的图形反映了纵坐标y与横坐标之间成正弦函数规律。
绘制一条二维曲线图通常需要两列数据,这些数据可以是函数计算的结果,也可以是离散的点。
1 函数绘图
利用函数进行绘图非常简单,只需要使用命令即可,如绘制正弦函数图形,可以使用命令:
当然可以指定函数的作用区域,如指定x轴范围为[-pi : pi]:
也可以生成多个函数,如将正弦函数和余弦函数同时绘制在图形上:
生成图形如下图所示。
gnuplot内置了一些特殊的数学函数,在图形绘制时可以直接使用。这些函数如下表所示。
除此之外,还有一些特殊函数:
更多关于函数的内容描述可参阅gnuPlot用户手册。
2 数据绘图
gnuplot还支持绘制离散数据图像。在绘制离散图像之前,需要先准备数据文件。
gnuplot绘制离散数据图形的格式为:
使用过程中包含一些修饰词:。
skip N:告诉程序忽略输入文件开头的N行
binary:表示文件包含二进制数据
index:选择要绘制多数据集文件中的哪些数据集
every:指定一个数据集内的哪些点要绘制
using:指定文件中的哪些列以何种顺序使用
smooth:执行简单的过滤、插值, 或者在绘制之前对数据进行曲线拟合
bin:将单个输入点沿x方向分成大小相等的区间,并绘制每个区间的单个累积值
volatile:表示文件的内容可能无法在后面重新读取,因此应该保留在内部以供重复使用。
如有下面的数据文件temp.dat:
利用gnuplot绘制降水量随月份的变化曲线,可以使用:
此时绘制图形如下图所示:
若觉得图形不够美观,可以使用修饰:
关于修饰词的解释,后面再进行描述。这里若提示找不到文件,可以使用文件的绝对路径。表示使用文本数据中的第一列与第二列;表示使用带标记符号的线条进行曲线绘制。
绘制完成的图形如下图所示。
有时想得到光顺的曲线,此时可以使用修饰。
图形如下图所示。
那如果要将多列数据放到一个图上,可以使用下面的命令:
输出图像如下图所示:
3 图形样式
前面的示例也可以看出来,在绘制图形的过程中,我们加入了大量的图形修饰词,这些修饰词用于控制图形的样式。
gnuplot里面有几个控制点和线画法风格的参数:
linetype:线条类型
linewidth:线条粗细
linecolor:线条颜色
pointtype:数据点的类型
pointsize:数据点的尺寸
可以在gnuplot中输入命令,此时输出如下图所示的信息,其中包含了绘图中的一些修饰信息。
3.1 线条类型
线条类型可以使用修饰词来进行指定,常用的线条类型包括:等。
如下图所示。
3.2 线条粗细
线条粗细使用修饰词或来指定。
如用下面的命令绘制一条指定线宽为3的曲线:
生成图形如下图所示。
下面用绘制不同宽度的曲线,感受一下线宽。
生成图像如下图所示。
3.3 线条颜色
线条颜色使用修饰词或进行指定。颜色可以使用gnuplot内置代码或rgb颜色。
如利用下面的命令显示不同颜色的函数图形:
分别显示了内置颜色代码为1,2,3,4时的函数图形。
颜色代码对应的颜色,可以在利用命令显示的信息中找到,如下图所示的红色框选位置。
gnuplot也支持利用rgb颜色代码定义线条颜色,此时可以使用关键词。
如下面的命令:
分别用蓝色与红色显示正弦与余弦曲线,如下图所示。
3.4 数据点类型与尺寸
数据点的类型在面板中可以找到,下图所示的红色框选位置为内置数据点类型代号。
数据点类型使用修饰词或进行指定。如下面的命令使用代号为7的数据点类型:
生成的图形如下图所示。
数据点的尺寸可以使用修饰词或进行指定。如下面的命令指定数据点尺寸为2。
生成的图像如下图所示。
一般情况下不用修改数据点的大小。
4 图形元素
图形元素包括坐标轴、图题、图例等信息。可以指定坐标轴的分布范围。下面的命令生成一个函数图像。
图像如下图所示。
默认情况下有图例,但没有x、y轴的信息。可以利用以下命令指定坐标轴信息:
生成图像如下图所示。
若有选项不想使用,可以使用取消设置,如:
函数图像变为下面的形式:
领取专属 10元无门槛券
私享最新 技术干货