如何使用gnuplot以不友好的格式绘制数据?

如何使用gnuplot以不友好的格式绘制数据?,plot,gnuplot,Plot,Gnuplot,我需要以最友好的格式绘制一些数据,大多数示例或用法将数据放在一个很好的列/表中,很容易解析和绘制。然而,我有以下格式(并且对于如何解决这个问题有点困惑): *为了便于阅读,我在日期之间添加了额外的空格 **注意:在DATE2下,DATE4标签_1缺失,即数据文件可能有来去不一的标签,并且应表示图形中的不连续性 我希望X轴使用DATEX作为标签,然后为每个标签创建两行(分别为xx和yy) 有人对解决这个问题的最佳方法有什么建议吗?我不太明白您想要生成什么样的图表。点由两个坐标定义,我可以想象将多个

我需要以最友好的格式绘制一些数据,大多数示例或用法将数据放在一个很好的列/表中,很容易解析和绘制。然而,我有以下格式(并且对于如何解决这个问题有点困惑):

*为了便于阅读,我在日期之间添加了额外的空格

**注意:在DATE2下,DATE4标签_1缺失,即数据文件可能有来去不一的标签,并且应表示图形中的不连续性

我希望X轴使用DATEX作为标签,然后为每个标签创建两行(分别为xx和yy)


有人对解决这个问题的最佳方法有什么建议吗?

我不太明白您想要生成什么样的图表。点由两个坐标定义,我可以想象将多个数据集绘制在一起进行比较,这样就可以考虑三个参数。第四个在哪里合适?你想要一个聚集的直方图吗

无论如何,如果我得到的数据格式不适合gnuplot,我通常会进行一些预处理,为gnuplot生成数据文件(使用公共Lisp或Perl)

更新:根据您的澄清意见,我将文件转换为以下格式:

# DATE, label-1-x, label-1-y, label-2-x, label-2-y, label-3-x, label-3-y 1, xx, yy, xx, yy, xx, yy . . . #日期,标签-1-x,标签-1-y,标签-2-x,标签-2-y,标签-3-x,标签-3-y 1,xx,yy,xx,yy,xx,yy . . .
我不太明白你想画什么样的图。点由两个坐标定义,我可以想象将多个数据集绘制在一起进行比较,这样就可以考虑三个参数。第四个在哪里合适?你想要一个聚集的直方图吗

无论如何,如果我得到的数据格式不适合gnuplot,我通常会进行一些预处理,为gnuplot生成数据文件(使用公共Lisp或Perl)

更新:根据您的澄清意见,我将文件转换为以下格式:

# DATE, label-1-x, label-1-y, label-2-x, label-2-y, label-3-x, label-3-y 1, xx, yy, xx, yy, xx, yy . . . #日期,标签-1-x,标签-1-y,标签-2-x,标签-2-y,标签-3-x,标签-3-y 1,xx,yy,xx,yy,xx,yy . . .
您最好的选择可能是使用Gunplot.py()创建一个脚本来执行您需要的任务。然后可以像在gnuplot中一样构建绘图

    g = Gnuplot.Gnuplot()
    g('set datafile separator " "')
    plot = "plot "
    plot += "'%s' using 1:3 title '($2)' with lines" % (filename))
    plot += ", '%s' using 1:4 title '($2)' with lines" % (filename))
    g(plot)

如果您还没有研究过gnuplot.py,我肯定会看一看。那里也有一个邮件列表,可能会有更具体的帮助。

您最好的选择可能是使用Gunplot.py()创建一个脚本来执行您需要的任务。然后可以像在gnuplot中一样构建绘图

    g = Gnuplot.Gnuplot()
    g('set datafile separator " "')
    plot = "plot "
    plot += "'%s' using 1:3 title '($2)' with lines" % (filename))
    plot += ", '%s' using 1:4 title '($2)' with lines" % (filename))
    g(plot)

如果您还没有研究过gnuplot.py,我肯定会看一看。那里也有一个邮件列表,可能会有更具体的帮助。

很抱歉给您带来困惑。澄清:每个标签的XX将是一个线条图,YY将是标签的另一个线条图。因此,每个标签将有两个与之相关联的折线图。在这个特殊的例子中,我将在图表上总共有6行。很抱歉造成混淆。澄清:每个标签的XX将是一个线条图,YY将是标签的另一个线条图。因此,每个标签将有两个与之相关联的折线图。在这个特殊的例子中,我将在图表上总共有6行。这是7年前发布的,但这是我一直在寻找的。TNX,@olan。这是7年前发布的,但这正是我想要的。TNX,@olan。