【问题标题】:How to create a data file for gnuplot?如何为 gnuplot 创建数据文件?
【发布时间】:2011-11-21 13:31:33
【问题描述】:

我正在尝试使用 gnuplot 制作图表。我指定了我的xrangeyrangelabels,但是当我输入以下命令时:

gnuplot> 使用 1:2 的线条绘制“data.txt”

gnuplot 告诉我:

警告:跳过不可读的文件“data.txt”绘图中没有数据。

我不明白我的数据文件为何无法读取。这就是我的data.txt 的样子:

X       Y  [I didn't enter X and Y into my text file]

10000   0.030
5000    0.02
1000    0.012

我知道我一定做错了——这是我第一次使用 gnuplot。我尝试在 Google 搜索如何制作正确的 data.txt 文件出现 zilch。


编辑:

我觉得在编程问答网站上问这个问题可能听起来很奇怪,但是带有数据的典型文本文件应该是什么样的?我不是计算机程序员,只是一名试图为她的生物化学课绘制图表的本科生。

【问题讨论】:

    标签: gnuplot


    【解决方案1】:

    正如大多数人回答的那样:文件不存在/您没有正确指定路径。

    或者,你只是写错了语法(除非你知道它应该是什么样子,否则你无法知道,对吗?尤其是在“帮助”本身时,它是错误的)。

    对于 windows 7 上的 gnuplot 4.6.0,终端类型设置为 windows

    确保指定文件的完整路径以避免在不存在的地方寻找它(默认似乎是“文档”)

    确保您使用以下语法:

    plot 'path\path\desireddatafile.txt'
    

    不是

    plot "< path\path\desireddatafile.txt>"
    

    也没有

    plot "path\path\desireddatafile.txt"
    

    还要确保您的文件是正确的格式,例如 .txt 文件格式 ANSI,而不是 Unicode 等。

    【讨论】:

    • 我爱死你了。谢谢你。我正在寻找将路径传递给 gnuplot 的正确方法,以便让 gnuplot 找到我的文件的正确方法。
    【解决方案2】:

    我在尝试使用 Windows 7 版本中提供的 Plot->Data filename... 选项打开文件时遇到了同样的问题(顺便说一下,它在另一台具有相同版本 OP 系统的计算机上运行良好)。

    然后我尝试更改目录并保存.plt 文件,但它也不起作用。最后,我尝试手动录制,因为它在此帖子队列中较早显示为 Linux:

    gnuplot > plot "./datafile.dat"
    

    它成功了!

    【讨论】:

      【解决方案3】:

      只需转到 cmd.exe 快捷方式的属性并通过添加放置所有“.txt”文件的文件名来更改“开始位置”。我遇到了同样的问题,我将整个文件的名称设置为“ D:\photon' 在属性的 'start in' 中,它起作用了。请记住,您必须将所有文件放在该文件夹中,否则您必须为每个数据文件创建许多快捷方式。抱歉,回复晚了

      【讨论】:

        【解决方案4】:

        为了将来参考,我遇到了同样的问题

        “警告:跳过不可读的文件”

        在 Linux 下。原因是我喜欢使用制表符补全,并且在 gnuplot 中这在末尾添加了一个我没有真正注意到的空格

        gnuplot> plot "./datafile.txt "
        

        【讨论】:

          【解决方案5】:

          我遇到了完全相同的问题。我遇到的问题是我还没有保存我正在输入的 .plt 文件。修复:我将 .plt 文件保存在与我试图绘制的数据相同的目录中,突然它起作用了!如果它们在同一个目录,你甚至不需要指定路径,你只需输入文件名即可。

          以下是发生在我身上的确切情况,以及我是如何解决的。第一行显示了我们都遇到的问题。我在第二行保存,第三行成功了!

          gnuplot> plot 'c:/Documents and Settings/User/Desktop/data.dat'
                   warning: Skipping unreadable file c:/Documents and Settings/User/Desktop/data.dat
                   No data in plot
          
          gnuplot> save 'c:/Documents and Settings/User/Desktop/myfile.plt'
          
          gnuplot> plot 'c:/Documents and Settings/User/Desktop/data.dat'
          

          【讨论】:

            【解决方案6】:

            像这样创建你的数据文件:

            # X      Y
            10000.0 0.01
            100000.0 0.05
            1000000.0 0.45
            

            并用它绘制

            $ gnuplot -p -e "plot 'filename.dat'"
            

            有一个很好的教程:http://www.gnuplotting.org/introduction/plotting-data/

            【讨论】:

              【解决方案7】:

              此错误通常表示找不到文件。

              你能从命令行看到文件吗?

              1. 尝试指定完整路径名。
              2. 检查行尾类型(使用0x0d)。
              3. 文件是否在另一个程序中打开?
              4. 您有读取权限吗?

              【讨论】:

              • 嗯,当我通过终端查看目录时,我确实看到该文件位于我保存它的目录中。在运行 gnuplot 之前我应该​​在终端中打开文件吗?还是完全独立于此?
              • 他收到消息“跳过“data.txt”中不可读的数据”,因此看起来 gnuplot 能够读取该文件。
              【解决方案8】:
              plot "data.txt" using 1:2 with lines 
              

              为我工作。您的数据文件中实际上有空行吗?这将导致一个空的情节。你能看到没有数据的图吗?就像情节 x*x。如果没有,那么您的终端可能没有正确设置。

              【讨论】:

              • 我输入文本文件的方式正是我在帖子中的方式。我确实看到了一个情节——我绘制了一张 sin(x) 图表,只是为了确保 gnuplot 没有出现问题并且结果很好。
              • 好的,所以你的 gnuplot 可以生成绘图了。如果您的数据文件中有空行,您将得到一个空图。删除空白行,你应该有你的情节。
              • 虽然在上面的帖子中我添加了包含在我的文本文件中的文本,但实际上我没有任何空格或任何行......它只是一个真正纯文本文件,只有数字。
              • 您使用什么编辑器来创建文件?如果您在 Windows 上运行,您应该能够从命令行输入 data.txt 并查看数据。
              • 我正在使用带有 Gnome3 的文本编辑器 gedit。我会发布快照,但是当您是新用户时,此论坛对上传照片有一些限制。 gnuplot 可以读取 LaTeX 文件吗?
              猜你喜欢
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2012-04-26
              • 1970-01-01
              • 2012-07-21
              • 2019-07-28
              • 2013-12-31
              • 1970-01-01
              相关资源
              最近更新 更多