gpt4 book ai didi

gnuplot - 如何在 Gnuplot 中指示具有不同点类型的标签?

转载 作者:行者123 更新时间:2023-12-02 16:48:51 25 4
gpt4 key购买 nike

假设我想在文件“animals.txt”中绘制数据:

cat 5.2 1.0
cat 5.4 1.3
cat 5.2 1.2
dog 3.8 1.1
dog 3.5 1.5
dog 3.6 1.3
giraffe 1.3 9.7
giraffe 1.5 9.0
giraffe 1.4 9.9

我可以使用以下方法生成带有标签的散点图:

plot "animals.txt" u 2:3:1 w labels

我还可以使用以下内容来改变每个点的样式:

plot "animals.txt" u 2:3 w points pointtype 3

是否可以让点对每个类别使用不同的点类型或颜色,而不是使用标签(可能会重叠)? (例如,使用 pointtype 3 时“cat”将显示为红色,使用 pointtype 4 时“dog”将显示为蓝色等)

我可以使用“lc 变量”并用颜色替换标签列,但我正在使用的文件有太多不同的标签,我无法轻松做到这一点。

最佳答案

我认为没有办法直接做到这一点。

但是,一个简单的解决方法是使用 gnuplot 的 awk 接口(interface)。然后,您可以绘制 3 个单独的图表,每只动物一个。

plot "<awk '{ if($1 == \"cat\") print $2,$3  }' animals.dat" u 1:2 w points title "cat", \
"<awk '{ if($1 == \"dog\") print $2,$3 }' animals.dat" u 1:2 w points title "dog", \
"<awk '{ if($1 == \"giraffe\") print $2,$3 }' animals.dat" u 1:2 w points title "giraffe"

由于每行之间的唯一区别是动物的名称,您可能可以用更好的方式编写脚本,但您明白了,

汤姆

关于gnuplot - 如何在 Gnuplot 中指示具有不同点类型的标签?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4980957/

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