Gnuplot有没有办法读取和识别结构化字符串?具体来说,我有几百个文件,都包含测量数据,文件名中定义了测量条件。
我的文件看起来像" 100d5mK2d0T.txt",这意味着这个数据是在100.5mK温度和2.0T磁场下获得的。
我有可能从名称中提取温度和场强数据,并将它们用作图中的标签吗?
提前致谢。
答案 0 :(得分:2)
使用gnuplot的内部字符串处理,您可以提出一个解决方案(使用substr
和strstrt
),但这非常详细。
最好使用外部工具进行字符串处理,例如perl:
filename = '100d5mK2d0T.txt'
str = system('echo "'.filename. '" | perl -pe ''s/(\d+)d(\d+)mK(\d+)d(\d+)T.txt/\1.\2 \3.\4/'' ')
temperature = word(str, 1)
magnetic_field = word(str, 2)
set label at graph 0.1,0.9 "Temperature: ".temperature." mK"
set label at graph 0.1,0.8 "Magnetic field: ".magnetic_field." T"