Gnuplot脚本将无法工作,但手动输入命令可以正常工作
当我手动绘图时,它工作正常,但是当我将它放入脚本时,它会给出一个错误。 我有名为g000000、g000007、g000008、g000010…等的数据文件,对应于模拟的不同时间步。 每个数据文件都是包含许多列数据的ascii文件。我想绘制一个x与y的图(第1列和第2列),并使用第17列为数据着色 以下是我的代码:Gnuplot脚本将无法工作,但手动输入命令可以正常工作,gnuplot,Gnuplot,当我手动绘图时,它工作正常,但是当我将它放入脚本时,它会给出一个错误。 我有名为g000000、g000007、g000008、g000010…等的数据文件,对应于模拟的不同时间步。 每个数据文件都是包含许多列数据的ascii文件。我想绘制一个x与y的图(第1列和第2列),并使用第17列为数据着色 以下是我的代码: set term gif size 1000,600 set xr [-0.05:0.05] set yr [-0.05:0.05] set xlabel "X" set ylabe
set term gif size 1000,600
set xr [-0.05:0.05]
set yr [-0.05:0.05]
set xlabel "X"
set ylabel "Y"
filelist = system('ls g000*')
do for [file in filelist] {
set output 'gasFe.'.(file[2:*]).'.gif'
plot file u 1:2:17 w d lc palette title (file)
}
然而,我得到一个错误的说法
;
set output 'gasFe.'.(file[2:*]).'.gif';
plot file u 1:2:17 w d lc palette title (file);
line 11: warning: Skipping data file with no valid points
;
set output 'gasFe.'.(file[2:*]).'.gif';
plot file u 1:2:17 w d lc palette title (file);
line 11: warning: Skipping data file with no valid points
...etc
但是,在不使用脚本的情况下,使用上面相同的命令手动执行此操作很好!那么问题出在哪里呢?什么是
wd
,你的意思是wp
(带点
)?范围正确吗?你们有17列吗?以下工作是否有效:绘制“g000000”u 1:2:17 w p lc调色板
?w d表示带点(绘制点而不是加号,这是您得到的w p)。范围是正确的。是的,我有超过17个专栏。您建议的代码段确实有效(wp和wd都有效,并且将我的数据点分别绘制为“+”和“.”)。就像我说的…很奇怪,我不明白为什么脚本不能工作