Baixe o app para aproveitar ainda mais
Prévia do material em texto
Guia ra´pido GnuPlot Guia “ra´pido” de uso do GnuPlot. Fabiano C. Souza Outubro - 2012 (Atualizado em Maio 2015) 1 Introduc¸a˜o O GnuPlot e´ software livre para construc¸a˜o de gra´ficos em duas e treˆs dimenso˜es, idealizado originalmente para plataformas Linux, mas com distribuic¸o˜es existentes tambe´m para o Windows e Macintosh. As verso˜es do GnuPlot para download, assim como Tutoriais e outras informac¸o˜es podem ser encontradas no site http://www.gnuplot.info/ (acessado em 15 de abril de 2013). Nas verso˜es mais recentes paraWindows, podem ser encontradas algumas falhas (bugs) que sa˜o corrigidas assim que noti- ficadas pelos usua´rios. Entretanto, para evitar ter que lidar com essas falhas, recomendo o uso da versa˜o 4.4.4 (http://sourceforge.net/projects/gnuplot/files/gnuplot/4.4.4/gp444win32.zip/download)1 , testada sem ocorreˆncia de bugs em algumas verso˜es do Windows XP e Windows 7. Para usar o Gnuplot na˜o e´ necessa´rio fazer nenhum tipo de instalac¸a˜o. Basta descompactar a pasta de arquivos (.zip) em um local adequado (pasta ’Meus documentos’ ou ’Area de trabalho’, por exemplo), podendo ser em seu pro´prio pen drive. Apo´s descompactar a pasta, abra o arquivo wgnuplot.exe (presente na pasta ../gnuplot/binary/) e visualize a janela de trabalho do Gnuplot. Voceˆ pode criar um atalho desse executa´vel em um local conveniente no seu computador. Para construir qualquer gra´fico voceˆ deve digitar os comandos cor- respondentes na a´rea de trabalho do Gnuplot ou rodar um script com os comandos digitados em um arquivo no formato texto (txt), conforme instruc¸o˜es dadas na pro´xima sec¸a˜o. 2 Testando alguns comandos na janela do Gnuplot O comando plot mostra o gra´fico de func¸o˜es conhecidas e/ou de dados experimentais. Veja a sintaxe para alguns exemplos simples. O comando > plot sin(x) mostra a func¸a˜o seno. Sa˜o func¸o˜es pre´-definidas abs, acos, atan, exp, log, log10, cos, tan, sqrt (raiz quadrada), **2, **3 (elevado ao quadrado, elevado ao cubo), etc. Tente combinar func¸o˜es como no exemplo abaixo: > plot(2*sin(x**2)/(abs(x)*sqrt(tan(x)))) ou em duas dimenso˜es: > splot(x*y/20) Para alterar as escalas, use os comandos set xrange[xmin:xmax] e set yrange[ymin:ymax]. Mostre a func¸a˜o seno e altere para mostrar no intervalo [0,0.5]: > plot sin(x) > set xrange[0:0.5] > replot Para dar um t´ıtulo ao seu gra´fico e identificar os eixos, uses os comandos set title, set xlabel e set ylabel: > set title ’De o titulo que quiser’ > set xlabel ’eixo x (metros)’ > set ylabel ’eixo y (Ampere)’ > replot Use o comando set autoscale (e replot para atualizar) caso queira que o Gnuplot fac¸a um autoajuste da escala (padra˜o). Para reiniciar o programa com as configurac¸o˜es iniciais digite reset. Para alterar as cores das linhas complemente o comando plot como no exemplo abaixo: > plot sin(x) with lines lt 5 O complemento lt significa tipo de linha (line type) e e´ acompanhado por um nu´mero inteiro, correspondente ao tipo de linha desejado. Para conhecer os tipos de linhas digite test na janela de trabalho do Gnuplot. Substitua lines por points caso queira mostrar pontos em vez de uma linha, como no exemplo a seguir. 1Ao copiar e colar este enderec¸o no browser verifique se o enderec¸o esta´ correto Prof. F. C. Souza 1 Guia ra´pido GnuPlot > plot sin(x) with points pt 3 A combinac¸a˜o dos complementos lt e pt se faz necessa´ria caso se queira uma cor espec´ıfica (ver- melho, por exemplo) e um tipo de ponto (c´ırculo cheio, por exemplo). Veja o exemplo: > plot sin(x) with points lt 1 pt 7 E´ poss´ıvel ainda redefinir o tamanho do ponto com a opc¸a˜o ps (point size) e a largura da linha lw (line width). 3 Construindo um gra´fico a partir de dados experimentais Para construir um gra´fico de um conjunto de dados, crie um arquivo de texto (dados.txt), escreva os dados em colunas (primeira coluna, x; segunda coluna, y, por exemplo). Para testar um exemplo, use os dados da Tab. 1. Tabela 1: Dados experimentais hipote´ticos de duas varia´veis x e y. A terceira coluna se refere ao erro da medida y. #x y ∆y 0.48 -3.55 1.0 1.05 -1.87 0.8 2.54 2.58 0.8 3.67 6.04 0.6 5.12 10.40 0.9 O Gnuplot ira´ ler apenas os nu´meros. Por isso, caso queira inserir alguma informac¸a˜o que na˜o sera´ lida pelo Gnuplot, insira o s´ımbolo # antes dela. Ale´m disso, escreva os nu´meros com ponto, em vez de v´ırgula, para indicar a casa decimal. Para gerar o gra´fico dos dados da Tab. 1, digite na janela do Gnuplot: plot ’dados.txt’ using 1:2 title ’Dados experimentais’ with points lt 1 pt 7 Lembre-se que voceˆ precisa “dizer” ao Gnuplot a pasta onde salvou o arquivo dados.txt, isto e´, clicando no bota˜o ChDir e escolhendo tal pasta. Voceˆ deve ter observado que os dados da Tab. 1 resultam em uma relac¸a˜o linear entre as duas varia´veis, isto e´, y = ax+ b, onde a e´ o coeficiente angular e b e´ o coeficiente linear. Para ajustar esses dados com a reta que passa mais pro´xima de todos os pontos emp´ıricos, existe o me´todo dos mı´nimos quadrados. O Gnuplot faz o ajuste usando o me´todo dos mı´nimos quadrados, informando ao final do ajuste os valores, e respectivos erros, dos coeficientes a e b. Para fazer esse ajuste, digite na janela do Gnuplot: f(x) =a*x+b fit f(x) ’dados.txt’ using 1:2 via a, b Para este exemplo, o ajuste linear fornece os valores a = (3.010 ± 0.008) e b = (−5.02 ± 0.03) (valores arredondados). Caso queira mostrar o gra´fico com os dados experimentais e a func¸a˜o f(x), utilize os comandos plot ’dados.txt’ using 1:2 title ’Dados experimentais’ with points lt 1 pt 7, f(x) title ’Melhor ajuste’ with lines lt 2 lw 3 Os dados acima sugeriram uma ajuste linear. Quando isso na˜o ocorrer, e´ poss´ıvel fazer o ajuste com qualquer outro tipo de func¸a˜o (f(x) = a √ x+ b, f(x) = a/x3+ bx2− c, f(x) = a sin(bx+ c), etc.) 4 Criando um “script” de comandos Uma maneira conveniente de usar o Gnuplot e´ escrever os comandos em um arquivo (script) e rodar esse arquivo no Gnuplot. Assim, na˜o e´ preciso digitar todos os comandos novamente a cada alterac¸a˜o feita. Em vez disso, faz-se as alterac¸o˜es no arquivo, que e´ salvo em seguida, para enta˜o roda´-lo novamente no Gnuplot para obter o resultado desejado. Crie uma pasta para alocar seus arquivos, copie o texto abaixo e cole em um arquivo de texto dentro dessa pasta. Salve o arquivo com o nome de script01.txt, por exemplo. Cuidado para que as ac¸o˜es de copiar e colar o texto abaixo na˜o alterem a sintaxe (espac¸amentos, dois pontos, aspas, Prof. F. C. Souza 2 Guia ra´pido GnuPlot etc), o que pode ocasionar erros ao rodar o arquivo no Gnuplot. Os comandos abaixo se referem ao gra´fico dos dados hipote´ticos da sec¸a˜o anterior. O resultado da execuc¸a˜o desse “script” de comandos esta´ mostrado na Fig. 1. reset set tmargin 3 set bmargin 4 set rmargin 4 set lmargin 8 set font "Helvetica,16" set title "Relacao linear hipotetica" font "Helvetica, 14" set xtics 0.5 font "Helvetica,12" set mxtics 4 # cria duas divisoes entre cada menor intervalo em x set ytics 2 font "Helvetica,12" set mytics 4 set key top left set xlabel "x" font "Helvetica, 16" set ylabel "f(x)" font "Helvetica, 16" set xrange[0:6] set yrange[-6:14] f(x) = a*x+b fit f(x) "dados.txt" using 1:2 via a, b plot "dados.txt" title "Dados do experimento" w yerrorbars pt 7 lt 1 ps 1.5,\ f(x) title "Melhor ajuste f(x)=a.x + b" w l lt 3 lw 1.5 Para rodar esse script, identifique no Gnuplot a pasta em que ele esta´ gravado. Para tanto, clique no bota˜o ChDir da janela do Gnuplot e escolha a pasta em que voceˆ salvou o arquivo. Em seguida, clique no bota˜o Open e escolha o arquivo com o script. O Gnuplot devera´ gerar o gra´fico correspondente. Assim, para alterar o gra´fico, basta editar os comandos no arquivo script01.txt, salvare compilar novamente (Open). Figura 1: Exemplo de gra´fico de dados com ajuste linear produzido no Gnuplot. 5 Algumas regras para construc¸a˜o de gra´ficos Algumas regras para confeccionar um gra´fico adequado[1]: 1. Identifique cada um dos eixos (grandeza e unidade correspondente); 2. Escolha a escala que facilita a leitura (diviso˜es devem assumir valores mu´ltiplos de 1, 2 e 5, preferencialmente); Prof. F. C. Souza 3 Guia ra´pido GnuPlot 3. Use pontos para dados experimentais e linhas para expresso˜es anal´ıticas ou ajustes nume´ricos; 4. Use formatos dos pontos e/ou trac¸ados de curvas diferentes para identificar dados de origens distintas; 5. Pontos experimentais devem vir acompanhados de barra de erros correspondentes. Refereˆncias [1] PIACENTINI, J. J. et al. Introduc¸a˜o ao laborato´rio de f´ısica. 3a ed. revista. Floriano´polis, SC: Editora da UFSC, 2008. [2] GNUPLOT. Dispon´ıvel em: <http://www.gnuplot.info/>. Acesso em: 15 Mar. 2013. Prof. F. C. Souza 4
Compartilhar