了解gnuplot如何使用awk脚本

了解gnuplot如何使用awk脚本,第1张

概述我有一个数据文件 data.txt中 1 12 23 35 47 5 我试图了解gnuplot如何使用awk.我可以用情节“< awk'{print $1,$2}'data.txt”绘制它.但是,当我尝试加载'< ./ script.sh data.txt'时,它不起作用. script.sh #!/bin/bashawk 'BEGIN { printf "plot " 我有一个数据文件

data.txt中

1 12 23 35 47 5

我试图了解gnuplot如何使用awk.我可以用情节“< awk'{print $1,$2}'data.txt”绘制它.但是,当我尝试加载'< ./ script.sh data.txt'时,它不起作用. script.sh

#!/bin/bashawk 'BEGIN {         printf "plot ";    }    {        printf "%i %i\n",,    }' 

使用script.sh方法返回错误:

gnuplot> plot 1 1

06002

“<./script.sh data.txt”,line 1: unexpected or unrecognized token

在我看来,我的awk脚本是内联awk语句的功能等价物.为什么script.sh方法不起作用?

仅供参考,我知道我可以用“data.txt”u 1:2来绘制我的数据.这只是我想要解决的更复杂问题的理想化版本.

解决方法 这应该与awk无关,但是对于plot和load命令都有gnuplots期望.

在我的理解中阅读gnuplot帮助输出并尝试您提供的示例:

plot "<awk '{print ,}' data.txt"

只是一种复杂的方式,通过popen调用在你的系统上提供一个像object这样的文件,plot命令然后从x,y点读取.

你的第二个脚本做了一些不同的事情,因为load命令现在在第一行接收一个它不能满足的命令(即绘图后跟一个x和y值),即使没有任何前缀命令也会收到后续命令(下一行只是2在这种情况下为2.

在我的活动gnuplot使用的记忆中 – 几年前,如果不是几十年;-) – 加载就像加载,你可以从模块组成绘图代码,但这些必须包含有效的gnuplot命令.

我系统上的加载帮助给出了:

gnuplot> help load The `load` command executes each line of the specifIEd input file as if it had been typed in interactively.  files created by the `save` command can later be `load`ed.  Any text file containing valID commands can be created and then executed by the `load` command.  files being `load`ed may themselves contain `load` or `call` commands.  See `comments` for information about comments in commands.  To `load` with arguments,see `call`. Syntax:       load "<input-file>" The name of the input file must be enclosed in quotes. The special filename "-" may be used to `load` commands from standard input. This allows a `gnuplot` command file to accept some commands from standard input.  Please see help for `batch/interactive` for more details. On some systems which support a popen function (Unix),the load file can be read from a pipe by starting the file name with a '<'. Examples:       load 'work.gnu'       load "func.dat"       load "< loadfile_generator.sh" The `load` command is performed implicitly on any file names given as arguments to `gnuplot`.  These are loaded in the order specifIEd,and then `gnuplot` exits.

我总是解决了生成匹配文件的问题,并为gnuplot调用提供了一些调用魔法来参数化这些图.

总结

以上是内存溢出为你收集整理的了解gnuplot如何使用awk脚本全部内容,希望文章能够帮你解决了解gnuplot如何使用awk脚本所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/1032568.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-24
下一篇 2022-05-24

发表评论

登录后才能评论

评论列表(0条)

保存