4

我正在使用普通命令在同一图表中绘制来自不同文件的数据:

> plot "foo1" title1..., \
> "foo2" title2...

假设 foo2 中的某些点与 foo1 中的其他点重叠。因此,由于 foo2 是最后一个被绘制的,因此其中的重叠数据将覆盖 foo1 的数据(我为它们选择了不同的颜色)。现在,我需要将数据从 title1 排列到 title2,因此我先绘制 foo1,然后绘制 foo2,但我还需要 foo1 的数据出现在 foo2 的重叠数据之上。

有没有办法做到这一点?

我希望我的问题很清楚。

4

2 回答 2

3

不幸的是,您不能直接更改数据的堆叠顺序。但是,您可以尝试这样的事情(如果我正确理解您的问题):

plot   NaN    title   'title1', \
      'foo2' title   'title2', \
      'foo1' notitle lt 1

第一个 plot 命令不绘制任何内容,但它为图例添加了正确的标题和线条样式。(请注意,NaN仅当 x 和 y 范围以某种方式设置时才有效,在这种情况下,通过其余数据被绘制。)第二个命令(在逗号之后)正常绘制第二组数据。第三行将第一组数据绘制在第二组之上,并用于lt 1匹配图例中条目的线型。

(额外的空间只是为了让事情很好地排列。)

于 2012-08-15T07:36:47.830 回答
0
gnuplot> set key invert
gnuplot> plot x title "title2", -2*x title "title1"

将按倒序列出密钥

title1
title2

但在 foo2 上绘制 foo1。

于 2012-08-22T11:09:59.900 回答