gpt4 book ai didi

csv - GnuPlot:每条 CSV 线画线

转载 作者:行者123 更新时间:2023-12-04 19:14:49 26 4
gpt4 key购买 nike

我刚开始使用 Gnu Plot 并创建了一些简单的绘图。但是现在我遇到了一个新问题。

输入是这样的 csv 文件:

name;n0;n1;n2
Benj;1;3;2
Silv;6;1;2
Steffi;3;2;2

列数和行数是动态的。所以这也是一个有效的输入文件:

name;n0;n1;n2;n3;n4
Benj;2;2;3;2;1

我喜欢这样的图表(输入是第一个 csv): enter image description here

我玩过一些我之前创建的 Gnu Plot 文件,但我总是得到一些完全不同的东西。

也许有人有提示或什么可以帮助我?

非常感谢,

最好的问候凯文

最佳答案

正如 Christoph 所指出的,您需要在绘图之前转置数据,answers here应该对此有所帮助。要确定数据中的行数,最新版本的 Gnuplot 可以使用 stats 命令(参见下面 Christoph 的评论),否则需要通过其他方式计算行数。

以下是使用外部程序处理这两个问题的方法:

dfile = "data.csv"
nrec = system("wc -l < " . dfile)
set datafile separator ';'
plot for [i=2:nrec] '<transpose --fsep \; -t '.dfile using i:xtic(1) with lines title columnhead

我使用 coreutils 中的 wc 来计算行数并按照 flyingsheep 的建议进行 transpose处理转置。

结果:

在具有更多绘图和数据点的数据上运行相同的脚本:

data2.csv

name;n0;n1;n2;n3;n4
Benj;1;3;2;5;3
Silv;6;1;2;3;4
Steffi;3;2;2;4;2
Carl;2;4;5;3;2

关于csv - GnuPlot:每条 CSV 线画线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22438318/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com