数据格式:Gnuplot和Fortran的输出

时间:2018-01-09 16:13:54

标签: fortran gnuplot

所以,我一直在进行一些模拟,我遇到了数据格式问题。 我要绘制的数据文件由3列数据组成:X Y f(X,Y)。在Fortran中,我使用以下命令

26  format(2F11.3,ES16.5)    
write(2,26) X(i),Y(j),prob(i,j)

生成如下文件:

   -490.001   -490.001     2.21004E-99
   -490.001   -485.001     4.65201E-98
   -490.001   -480.001     9.49095E-97

然后,使用gnuplot 5.0中的以下命令

reset
set terminal gif animate size 800,600 enhanced font 'Helvetica,10'
set size square
unset cbtics
s=201
set palette rgb 34,35,36; 
set pm3d map
set dgrid3d 201,201
set output "novo12.gif"
do for [i=0:0]{
set autoscale fix
splot 'rtp.txt' u 1:2:3 every :::(0+i*s)::(s+i*s) notitle 
}
set output

我得到this image。哪个错了,似乎没有任何实际意义。但是,当我放弃使用Fortran中的format语句并使用

编写文件时
write(2,*) X(i),Y(j),prob(i,j)

我得到的数据文件如下:

  -490.000809582900       -490.000809582900       2.210036061559572E-099
  -490.000809582900       -485.000801321850       4.652007002167014E-098
  -490.000809582900       -480.000793060800       9.490949372368304E-097

然后,使用相同的gnuplot命令,我得到this image,这是正确的!

我可以使用列表导向输出,因为它可以工作,但是有另一个文件,其中一个向量字段用4列(XY dx dy)编写,并使用自由格式写入数据将导致第4列赢得& #39;与前三个相同的行,使其“不可读”#39;通过gnuplot。

为什么gnuplot不了解数据?我该如何解决这个问题?

0 个答案:

没有答案