gnuplot - 使用位于多个文件中的数据制作直方图

时间:2012-08-22 23:16:19

标签: gnuplot histogram

我知道如何制作histogram in gnuplot,但当数据位于单个文件时,我看到的所有说明都有效。我的问题是我的数据跨越几个文件。有没有办法用gnuplot

执行此操作

3 个答案:

答案 0 :(得分:3)

不是真的。 Gnuplot真的只擅长处理一个文件。但是,有许多有用的外部工具可以将文件组合在一起:

plot "<magic_external_tool file1 file2 file3 file4 ..."  ...

当然,您选择的外部工具是一个关于如何格式化文件的问题。如果备用证(awksedjoincat ...)不起作用,我通常会依赖python来编写快速脚本做这项工作,但我相信很多其他人会使用perljava之类的东西。使用什么工具并不重要,只要你可以哄它将格式正确的文件写入标准输出,你就是金色。

答案 1 :(得分:1)

正如mgilson所说,这在gnuplot中确实不可能。

你可能想要考虑的一件事(我在这里有偏见,因为我是该项目的作者)是Pyxplot http://www.pyxplot.org.uk,它是由一群gnuplot用户编写的,他们对像这个。像gnuplot一样,它是免费和开源的,它的语法实际上是相同的。

根据您的需要,它有一个直方图命令,它生成一个数学函数,表示根据提供的数据计算的直方图(参见http://pyxplot.org.uk/current/doc/html/sec-histogram.html)。你可以按照以下方式做点什么:

histogram f1() 'file1.dat'
histogram f2() 'file1.dat'
histogram f3() 'file1.dat'
plot f1(x) + f2(x) + f3(x)

答案 2 :(得分:1)

在我看来,你确实可以使用Gnuplot这样做,我就是这么做的。我使用的解决方案可以在这里找到:https://stackoverflow.com/a/11092650/448700