使用gnuplot从多个文件打印曲线

使用gnuplot从多个文件打印曲线,gnuplot,Gnuplot,我想用gnuplot在同一个图中绘制包含在不同目录中的一系列数据 我有一个名为Ntimestep=X的文件夹集合,其中X可以是例如100、200、400等等。在每个文件夹中,我都有一个文件occ.dat,其中包含我想要绘制的数据,比如说3列第一个x点,第二个和第三个y点。 我希望我的gnuplot脚本自动检测名为Ntimestep=X的所有文件夹,并将文件Ntimestep=X/occ.dat中包含的数据添加到我的绘图中 我还希望数字X出现在绘图的图例中 目录结构示例: - Ntimestep=

我想用gnuplot在同一个图中绘制包含在不同目录中的一系列数据

我有一个名为Ntimestep=X的文件夹集合,其中X可以是例如100、200、400等等。在每个文件夹中,我都有一个文件occ.dat,其中包含我想要绘制的数据,比如说3列第一个x点,第二个和第三个y点。 我希望我的gnuplot脚本自动检测名为Ntimestep=X的所有文件夹,并将文件Ntimestep=X/occ.dat中包含的数据添加到我的绘图中

我还希望数字X出现在绘图的图例中

目录结构示例:

- Ntimestep=100
  ~ occ.dat
  ~ <other files>
- Ntimestep=200
  ~ occ.dat
  ~ <other files>

Gnuplot本身无法创建这样的文件列表,但您可以调用一些命令行工具或第二个脚本来创建这样的列表,然后Gnuplot可以使用这些脚本

大概是

list = system('ls Ntimestep=*/occ.dat')
plot for [file in list] file
在Windows上,类似list=system的'dir/b*.txt'应该可以工作,请看我无法测试它

要获取标题中的数字,只能使用gnuplot

t(s) = (s2 = s[11:*], s2[0:strlen(s2)-8])
plot for [file in list] file title t(file)

为了更灵活地使用字符串格式,您还需要使用外部工具,例如通过sed传输ls的输出。

您的问题很不清楚。请给出几个示例文件夹名和文件名,以及数据和打印命令的示例。