Como plotar dados marcados com pontos?

6

Gostaria de transformar um arquivo como:

Name  X  Y
a     1  2
b     4  1
s     3  3

em um gráfico X-Y com os pontos X-Y identificados como Nome.

Como posso fazer isso? Acho que isso pode ser feito com o gnuplot, mas ainda não consegui fazer isso.

    
por Juanjo Conti 07.11.2009 / 18:40

2 respostas

6

Você pode colocar rótulos em um deslocamento especificado dos pontos usando o seguinte comando do gnuplot:

echo "plot 'file.dat' using 2:3 pt 2 notitle, '' using 2:3:1 with labels offset 0.5,0.5 notitle;" | gnuplot -persist

Nota: funciona somente se o gnuplot tiver sido compilado com --enable-datastrings (graças a DaveParillo para o esclarecimento)

    
por 08.11.2009 / 11:26
2

O enredo do Gnu não pode fazer isso sozinho. Não sei o que fazer com o texto. Se os seus dados existirem em um arquivo chamado file.dat, então:

perl -ane 'print "set label \"($F[0])\" at $F[1],$F[2]\n"' file.dat > label.plt

produzirá um arquivo de etiqueta que você pode usar no gnuplot. Você pode então produzir um gráfico (muito básico) como este:

gnuplot> load "label.plt"
gnuplot> plot 'file.dat' u 2:3

Você pode mexer com o offset da etiqueta se quiser. Por exemplo,

"set label \"($F[0])\" at $F[1]+0.05,$F[2]+0.05\n"' 

move um pouco as etiquetas, de modo que elas não estejam exatamente de acordo com seus pontos.

    
por 07.11.2009 / 21:02

Tags