2009-12-03 10 views
5

J'ai un fichier de données qui ressemble à ceciLes étiquettes apposées sur les données d'entrée dans gnuplot

#index name1 name2 name3 
1 2 3 4 
2 3 4 5 
3 4 5 6 
4 5 6 7 

Je veux tracer 3 lignes:

plot "data" using 1:2 with lines,\ 
... 

Cela fonctionne bien, sauf pour les étiquettes de ligne. Comment puis-je spécifier les noms de colonne dans le fichier de données?

Répondre

13

Si vous avez gnuplot 4.2 ou plus récent, vous pouvez le faire assez facilement. Vous devrez cependant vous débarrasser du marqueur de commentaire dans la première ligne.

Avec un fichier comme ceci:

index name1 name2 name3 
1 2 3 4 
2 3 4 5 
3 4 5 6 
4 5 6 7 

ce qui suit va faire ce que vous voulez:

set key autotitle columnheader 
plot 'a.dat' u 1:2 w l, '' u 1:3 w l, '' u 1:4 w l 

Si je fais set term dumb avant de tracer, je reçois un beau terrain ascii. J'aime gnuplot!

7 ++----------+----------+-----------+-----------+----------+---------$$$ 
    +   +   +   +   +   name1$****** + 
    |              $name2 ###### | 
    |             $$$$$$ name3 $$$$$$ | 
6 ++           $$$$$$     ### 
    |          $$$$$$     ###### | 
    |        $$$$$$     ######  | 
    |       $$$$$$     ######    | 
5 ++     $$$$$     ######     *** 
    |    $$$$$$     ######     ****** | 
    |  $$$$$$     ######     ******  | 
    | $$$$$$     ######     ******    | 
4 $$$     #####     ******     ++ 
    |    ######     ******       | 
    |  ######     ******        | 
    | ######     ******          | 
3 ###     *****           ++ 
    |    ******             | 
    |  ******              | 
    + ****** +   +   +   +   +   + 
2 ***---------+----------+-----------+-----------+----------+----------++ 
    1   1.5   2   2.5   3   3.5   4 
0

columnheader (n)

Plus verbeux/souple que set key autotitle columnheader:

plot 'my.dat' using 1:2 title columnheader(2), \ 
    '' using 1:3 title columnheader(3) 

testées sur Gnuplot 4.6, Ubuntu 15,10.