Como usar o gnuplot num Mac

Há pouco tempo necessitei de utilizar a excelente ferramenta gnuplot no meu Mac. Aqui deixo um guia de como instalar e utilizar alguns comandos. Primeiro, instalem o MacPorts. Depois, basta abrirem o terminal e correrem o seguinte comando:

sudo port install gnuplot

É normal que demore bastante tempo a instalar, pois são necessárias muitas dependências. No final do processo de instalação, deverão poder escrever gnuplot no terminal e entram na aplicação.

A maneira mais fácil de utilizar o gnuplot é ter um ficheiro com os valores separados por espaços e por linhas. Em baixo está um exemplo de um ficheiro com 2 data sets numerados:

1 2 5
2 3 5
3 7 6
4 6 6
5 9 7

Neste caso, a primeira coluna irá ser utilizada para o eixo do x e as outras colunas pertecem a data sets individuais, que serão mapeados no eixo do y. Admitindo que estes valores estão guardados no ficheiro test.txt no working directory actual, poderemos mapeá-los desta maneira:


plot "test.txt" using 1:2, "test.txt" using 1:3

Aqui dizemos para mapear o data set 2  e o 3 usando o data set 1 como eixo do x. No entanto, tal como podemos ver em baixo, o resultado não é muito impressionante.

gnuplot  - exemplo 1

Existem alguns problemas com o resultado: os títulos dos data sets não estão correctamente configurados, não se percebem bem os dados por causa dos pontos, e o eixo do y poderia começar a partir do 0, e não do 2. Começando a passar os pontos para linhas, com o parametro with lines:


plot "test.txt" using 1:2 with lines, "test.txt" using 1:3 with lines

gnuplot - exemplo 2

Em alternativas ao with lines temos o smooth bezier e smooth csplines, que fazem aproximações de maneira a criar uma linha mais fluída:


plot "test.txt" using 1:2 smooth bezier, "test.txt" using 1:3 smooth csplines

gnuplot - exemplo 3

De maneira a corrigir a escala e os títulos, corremos os seguintes comandos:


set yrange[0:10]
plot "test.txt" using 1:2 smooth bezier title "primeiro", "test.txt" using 1:3 smooth csplines title "segundo"

gnuplot - exemplo 4

E pronto, o básico do gnuplot encontra-se explicado. Esta ferramenta é bastante complexa e poderosa, mas estes comandos devem chegar para análises rápidas e simples.

  • Mateus

    Hey Miguel,
    I’m trouble cause “port” command doesn’t work.
    Do u know how fix it?
    Tks in Advance.

  • Bárbara Cezar

    Olá Miguel,

    Você teria algum material mais completo? Se sim, poderia disponibilizar por favor?

    Desde já agradeço.

  • Luis

    Olá Miguel, tenho um problema com o gnuplot. Eu uso o OS X Yosemite e não posso usar outros estilos de linhas nos gráficos, por exemplo uso lt 2 ou lt x mas sempre os gráficos saem como lt 1.