为什么在打印我使用Fortran创建的.dat文件时,我会不断收到Gnuplot的“警告跳过不可读文件”消息?
这是密码为什么在打印我使用Fortran创建的.dat文件时,我会不断收到Gnuplot的“警告跳过不可读文件”消息?,fortran,gnuplot,Fortran,Gnuplot,这是密码 program plotting implicit none real, parameter :: pi = 3.141592 integer, parameter :: n=100 real, dimension(1:n) :: x,y real :: a=0.0, b= 2*pi real :: increment integer:: i increment = (b-a)/(real(n)-1) x(1) = 0.0 do i =2 , n x(i) = x(i-1)
program plotting
implicit none
real, parameter :: pi = 3.141592
integer, parameter :: n=100
real, dimension(1:n) :: x,y
real :: a=0.0, b= 2*pi
real :: increment
integer:: i
increment = (b-a)/(real(n)-1)
x(1) = 0.0
do i =2 , n
x(i) = x(i-1) + increment
end do
y = sin(x)
open(unit=25, file='sineplot.dat')
do i=1, n
write(25, *) x(i), y(i)
end do
close (unit=25)
end program
但当我进入GNU绘图并输入时:
使用1:2绘制“sineplot.dat”
将显示以下消息:
跳过不可读文件sineplot.dat时发出警告
绘图中没有数据
我已经检查了数据文件,它看起来是正确的,我认为问题在于终端类型,它被设置为默认的“wxt”,但我不知道这是否是我应该使用windows 8.1解决这个问题的方法。对我使用gnuplot 5.0和windows 7有效 您可以在命令提示符下尝试以下操作,但我尝试了wxt和windows,两者都可以正常工作:
gnuplot -p -e "set terminal windows; plot 'sineplot.dat' u 1:2"
你能发布你的sineplot.dat文件吗?
是什么把你文件中的列分开的对不起,我不懂fortran。如果列之间没有空格分隔,则可能必须使用set-datafile separator。我也面临类似问题。当我键入vi file name.dat时,我注意到该文件并不存在于该文件夹中,而是存在于该特定文件夹中的文件名.dat\中。刚刚重命名了文件,它就可以工作了 您可能只是在错误的目录中,因此gnuplot找不到文件。正确的目录是什么?我尝试了完整的路径名,它给出了相同的结果,同时使用wxt和windows终端。键入pwd以查看您所在的目录。那一定是数据文件所在的位置。但使用完整路径也应该有效。这与输出端子无关。并且在Windows上也使用/作为目录分隔符,以避免双引号中的反斜杠出现问题。如果文件格式不正确,则不会显示该错误消息,前提是该文件无法以错误的文件名、错误的工作目录打开,我也试过了,我得到了以下两行作为错误消息:第0行:警告:找不到或无法打开文件swineplot.dat第0行:绘图中没有数据这是5.0版的消息,使用4.6.6测试的早期版本会给你警告:跳过不可读的文件…是的,它是两个用空格分隔的collumns,我的GNU绘图版本是4.4补丁级别2。此外,我还尝试使用整个路径名,但效果没有更好。