删除gnuplot中自动标题键标签中的文件路径,只留下文件名

时间:2013-10-28 18:47:41

标签: plot formatting key gnuplot filenames

根据搜索命令的输出,我在gnuplot中使用for循环来绘制多个文件。 plot命令将整个文件名放在键中,包括完整路径。我想只放文件名,删除目录的路径。这可能吗?

#!/usr/bin/gnuplot -persist

set terminal pdfcairo enhanced size 10in,7in

wmax_List = "`echo $(ls E0025/4D/Re2000/NS.dat.*[02468]000)`"

plot for [i in wmax_List] i using 1:2 with points title i

在这种情况下,所有文件都在同一个文件夹中。 title i选项使得“E0025 / 4D / Re2000 /”出现在绘图键的每一行中。我可以将绘图脚本放在该文件夹中,但那里有数千个数据文件(我实际上每1000个绘制一个),所以我更喜欢在当前位置执行脚本。

所以,我的问题是,有没有办法从密钥中删除完整路径?我尝试使用find而不是ls来生成仅包含文件名的字符串列表,但我不知道如何在plot命令中输入完整路径+字符串。

由于

1 个答案:

答案 0 :(得分:2)

你有不同的可能性:

dirname = 'E0025/4D/Re2000/'
wmax_List = system('ls '.dirname.'NS.dat.*[02468]000')
ind = strlen(dirname)+1

plot for [i in wmax_List] i using 1:2 with points title i[ind:*]

plot for [i in wmax_List] i using 1:2 with points title system('basename '.i)