我想使用如下命令
plot 'datafile.gz' u 1:2
在 gnuplot 中查找经过 gzip 压缩的数据文件。当然,gnuplot 会看到文件经过 gzip 压缩,并帮我解压。有没有办法让 gnuplot 直接处理经过 gzip 压缩的文件,而我无需先将其解压到磁盘?
答案1
如果您从 unix 命令行向 gnuplot 提供其命令,那么您也可以从另一个程序将数据通过管道传输给它,比如zcat
读取 gzip 压缩文件并将其打印出来,例如:
zcat datafile.gz | gnuplot -p -e 'plot "-" u 1:2'
编辑:
显然,您可以为 gnuplot 命令提供一个 shell 命令来代替文件名,plot
以便运行并使用其输出。只需<
在前面加上一个:
plot "< zcat datafile.gz" u 1:2
您应该能够多次使用它来做您想做的事情。
(答案由 philipp.janert 在 'Gnuplot in Action' 论坛上提供http://www.manning-sandbox.com/message.jspa?messageID=77092)
答案2
是的:
gzcat datafile.gz | plot '-' u 1:2