【发布时间】:2014-04-24 11:54:46
【问题描述】:
我正在寻找一种将不同文件中的数据绘制到一个图表中的方法。
我正在测试解决问题的不同方法。我有一些参数,我试图得出结果与这些参数的关系。我对正在比较的不同解决方案进行了一些测试,并使用不同的参数重做了几次。
所以我有几个看起来像这样的 .csv 文件。
test1 test2 test3 test4 ...
sol1 1 1 1 1
sol2 1 1 1 1
sol3 1 1 1 1
sol4 1 1 1 1
...
(这些当然是用真实数据填充的,而不仅仅是 1)
我想绘制一个图表,其中 Y 轴是(例如)test1/sol1 的结果,x 轴绘制不同的参数值(不同的 .csv 文件)。
我希望我已经明确了我要创建的内容。
我希望有一种方法可以直接在 gnuplot 中执行此操作。文件结构是这样的,为了创建一些其他的图表,所以我真的不想改变它。
我读到了连接两个文件的可能性,但我真的不认为这有多大用处。
编辑:(感谢 Christoph)我想绘制单元格 test1/sol1 中的值与我的参数。每个文件的参数都在变化。所以我需要为每个文件读取 1 个数据点。
最后,我想在一张图中为不同的解决方案绘制这些信息。所以对于细胞 test1/sol1, test1/sol2, test1/sol3,...
在下面的示例中,x 轴是变化参数,Y 轴是“test1”列中相应单元格中的值,不同的行对应不同的解决方案。
(来源:googlecode.com)
(来自谷歌的随机图片)
我希望现在我想要实现的目标更清楚了。
【问题讨论】:
-
我不明白你想绘制什么:
test1/sol1应该在 y 轴上是什么?您想绘制单元格test1/sol1中的值与相应的参数(包含在文件名中吗?)?您可以使用plot for [file in filelist]之类的迭代来做到这一点,但这不适用于线条,仅适用于框或点等。此外,可能的解决方案取决于您想要包含在图中的其他值:应该sol1出现在某处或test1?参数值等呢 -
嗨克里斯托夫。感谢您的回复。我确实想绘制单元格 test1/sol1 中的值与参数。参数只是 1,2,3,4...(包含在文件名中)。单元格中的值是百分比,但这并不重要。我想使用线条,因为我想在同一张图上放置多个图(test1/sol2、test1/sol3、...)来比较它们。
-
好的,因为你不能用线连接来自不同文件的点。这就是为什么需要连接多个文件的要点之一。或者你在
set table内部绘图,然后重新绘制它。