[ 数学 ]gnuplot 绘图软件

新人注册,对gnuplot绘图软件比较熟悉,发个水贴

gnuplot 尽管是交互式指令或者通过脚本文件(后缀名plt 或者 gpl)操作, 但仍
不失为一款精巧的绘图软件。
项目网页 gnuplot.info/

sudo zypper in gnuplot

可以测试
在终端窗口输入gnuplot 进入软件交互界面
输入 plot sin(x)
则回出现 函数曲线窗口 在曲线窗口按’q’键可以退出图形窗口回到 命令行界面
输入 exit
退出 gnuplot 软件

gnuplot通常用到两种功能 1)绘制函数曲线, 2)绘制数据点。
我们从二维图开始练习,为了省事,可以先vi 建立一个脚本 test1.plt,
里面的内容为
reset
set term pdf enhanced
set out “test1.pdf”

set xlabel "x"
set xrange -pi:pi]
set xtics pi/4

set ylabel "y"
set yrange -1:1]
set ytics 0.5

plot sin(x), cos(x), exp(x)

set out
exit

保存后,在命令行窗口输入 gnuplot test1.plt 后回车
你就会在当前目录下得到test1.pdf文件了。
如果你有多个脚本 可以把文件名用空格隔开作为参数,
一起放在 gnuplot后面。这就是脚本灵活的地方,甚至
有些网页在后台调用gnuplot 生成图片文件 然后在网页上
及时刷新数据图。

当然我自己常常使用eps文件以利于插入latex中,那么
在上面脚本中至于要更改
set term postscript eps color enhanced 即可
当然 set out “test1.eps” 需要顺手更改。

下面再谈谈数据点作图 比如常见的 x-y图
如果我们有一个数据文件test1.dat
它的内容是

comments line

x y1 y2

1 0.3 0.4
2 0.9 0.8

那么 在plot命令可以这样写
plot “test1.dat” using 1:2 with lp pt 7 title “set1”, “” u 1:3 w lp pt 2 notitle
其中using 1:2指使用文件第一列作为x坐标,第二列作为y坐标 using可以简写为u
with lp 指 以linepoints 点线形式连接,当然你可以 改为 with l 或者 with p 都行
with可以简写为w 后面 pt 是pointtype 当然第二条线的含义相信大家都能读懂了
同一数据文件就不必重复输入而代以""

上述命令就做出了两条曲线,当然你可以检查帮助获取更多的线条 点格式
就是在gnuplot命令提示符后面help 或help 某一具体指令

最后我们当然可以把函数曲线和数据点曲线放在一起
plot cos(x), “test1.dat” w lp

等有时间慢慢填上内容

import matplotlib.pyplot as plt :joy:

不会直接用 gnuplot 画图。octave 后台就是用它。

直接用 gnuplot 呀,厉害呀

不过 GNU/Octave 默认做的图真心粗糙,调也不如用 Gnuplot 处理来得简便。所以真要作高质量的图,还是先数值计算、再用 Gnuplot 比较好。

因为它现在已经默认不是用 gnuplot 了~我记得手册里有讲~他用的是 fltk/opengl

Sent from my MI-ONE C1 using Tapatalk 2

现在它默认的改用 fltk/opengl 了

Sent from my MI-ONE C1 using Tapatalk 2

我一般都是用 matlab 或者是 mathematica 画图。

gnuplot 作图真心威武,不过指令比较复杂,以后有什么效果做不出来就找楼主啦 :smirk: