我有下表:
/* out.dat */
0 1.856381821661646 0.511222553331535
1 -1.513297876716274 -0.795936395061944
2 -1.467599747901700 -0.746686307661924
3 -0.559071676029565 0.626769978902970
4 0.826490214782210 0.000000002133100
4 0.836812258049098 0.000000002119134
4 0.837038664701387 0.000000001783730
4 0.845692121312554 0.000000003032239
4 0.909049958675113 0.000000000193274
4 0.885434430828159 0.000000000194619
(...)
第二列和第三列是x / y值,其中第一列是数据点的标签。我希望所有带0的点都有一个可区分的符号,所有带有1的点的另一个符号,依此类推。
所以伪代码如下所示:plot "out.dat" using 2:3 with points [from 1. col]
顺便说一下,由于我需要大约30个不同的符号,palette
选项没有多大帮助。
答案 0 :(得分:1)
您可以使用gnuplot的迭代:
plot for [i=0:30] 'out.dat' u 2:($1==i ? $3: NaN) w points pt i
虽然我必须说希望30个独特且容易区分的标记对于大多数( all?)终端来说可能有点延伸......