GNUPLOT Uma breve introdução O GNUPLOT é um programa para traçado de gráficos bi e tridimensionais distribuído livremente na Internet. Ele está disponível para plataformas Linux, Windows e outras do mundo Unix. Neste documento faremos uma breve introdução ao uso do programa, especialmente no que concerne ao traçado de gráficos bidimensionais. Para executar o GNUPLOT, basta clicar no ícone que deverá estar na sua área de trabalho. Caso o atalho não tenha sido instalado, procure pelo programa wgnuplot.exe que deverá estar em algum diretório da sua máquina. Uma vez em execução o programa exibirá uma tela de introdução que termina com o prompt gnuplot>. A partir desse instante o programa fica esperando um comando do usuário. Existem dezenas de comandos para o GNUPLOT mas, neste documento, vamos tratar apenas de alguns deles. Os demais estão muito bem documentados nos manuais que acompanham o produto. Inicialmente vamos fazer algo bem simples: vamos traçar um gráfico da função cosseno. Para isto usaremos o comando plot: gnuplot> plot Uma vez dado o comando, e supondo que não existam erros, uma janela gráfica será aberta com o resultado desejado:.8.6.4.2 -.2 -.4 -.6 -.8 - - -5 5
Como se pode observar, a função foi traçada automaticamente e para isto o programa usou escalas, tanto em x como em y, que resultaram em um aspecto bem razoável. Essa escala automática, entretanto, nem sempre é a que desejamos. Poderíamos, por exemplo, querer uma figura do cosseno para x variando de a 2π ( a 6,28 ). Para resolvermos esse problema, usaremos o comando set xrange que nos permite fixar a escala em x. Veja: gnuplot> set xrange [:6,28] gunplot> replot Neste caso o gráfico ficará assim:.8.6.4.2 -.2 -.4 -.6 -.8-2 3 4 5 6 Podemos ainda melhorar a aparência deste gráfico colocando linhas horizontais e verticais nos pontos já marcados dos eixos. Para tanto, usaremos o comando set grid. Vamos colocar também um título e rótulo nos eixos: Veja: gnuplot> set grid gnuplot> set title Gráfico de gnuplot> set xlabel ângulo (em radianos) gnuplot> set ylabel gnuplot> unset mouse 2
Depois de todos esses comandos, o nosso gráfico ficará assim:.8.6.4.2 -.2 -.4 -.6 -.8 Grafico de - 2 3 4 5 6 angulo (em radianos) Nossa figura agora tem título, nome para os eixos e desligamos a exibição das coordenadas do mouse no canto inferior esquerdo da figura ( unset mouse ). Resumindo, tivemos até agora os comandos do quadro abaixo. Tente reproduzi-los na sua máquina, e confira os resultados. 3
Vamos agora tratar de funções que fazem parte do nosso curso. Inicialmente, vejamos a função linear, dada genericamente pela relação y(x) = ax + b. Sobre essa função já sabemos que o gráfico é uma reta que corta o eixo dos y no ponto b e o eixo dos x no ponto b/a (raiz). Sabemos também que se a > a função é crescente e se a < ela é decrescente. Façamos então o gráfico de y(x) = 2x + 3 usando os recursos que aprendemos anteriormente: gnuplot> set grid gnuplot> unset mouse gnuplot> plot gnuplot> set zeroaxis linewidth.5 gnuplot> Para este gráfico usamos o comando zeroaxis que desenha uma linha cheia nas coordenadas (,) para facilitar a visualização. O gráfico mostra o que já prevíamos: uma linha reta. 25 2 5 5-5 - -5-2 - -5 5 4
Se fizermos uma mudança de escala de modo a observarmos com mais detalhes a região próxima de (,), podemos até mesmo avaliar graficamente o valor da raiz (= -,5) 6 4 2-2 -4-2 - 2 Uma visão mais ampliada ainda nos permite ver com muito boa aproximação o valor da raiz. Este é um dos métodos numéricos para resolução de equações que será discutido futuramente..6.4.2 -.2 -.4 -.6 -.8 -.7 -.6 -.5 -.4 -.3 -.2 5
Ainda dentro do assunto das funções lineares, consideremos agora o seguinte problema: Sejam dadas as funções f(x) = 2x + 3 e g(x) = -2x + 4. Localizar, graficamente, o ponto (x,y) em que as retas dessas funções se encontram. É claro que podemos resolver este problema analiticamente determinando x na igualdade f(x) = g(x) e calculando f(x ) mas o que queremos é uma solução gráfica!. Façamos então, na mesma escala, os gráficos de f(x) e de g(x): gnuplot> plot, -2*x + 4 gnuplot> set grid 5-5 -2*x + 4 - - -5 5 Como podemos ver no gráfico ao lado, as retas encontram-se na região (,5) mas não temos resolução para determinarmos um valor. Façamos então uma mudança de escala (um zoom) que nos permita conhecer com maior precisão as coordenadas do ponto de intersecção das duas retas. O gráfico abaixo, resultado desse zoom nos mostra que a intersecção está no ponto (,25 : 3,5). Como exercício, confira esse resultado pelo método analítico. 3.7-2*x + 4 3.6 3.5 3.4 3.3 3.2 3..5..5.2.25.3.35.4.45.5 6