|
HowTo: gnuplot
Início
1. Introdução
Gnuplot é um programa gráfico com uma interface de comando em linha com
versões para praticamente todas as plataformas (Unix, Windows, DOS, Macintosh, etc.).
É particularmente orientado para trabalho científico. É utilizado por outros programas
na geração de gráficos.
É conveniente fazer a instalação dos pacotes 'Ghostscript'.
Início
2. Como fazer a instalação em Microsoft Windows
- Fazer o download da versão windows, por exemplo, de
https://sourceforge.net/projects/gnuplot/files/gnuplot/;
- Desmanchar o ficheiro, por exemplo, na pasta 'Programs';
- Se desejar, durante a instalação, pode criar um atalho na área de trabalho.
Se não o fizer e se o desejar fazê-lo mais tarde pode criar um atalho para 'wgnuplot' que
se encontra na directoria ' ..\gnuplot\bin\ '.
- Pode testar o seu funcionamento, executando e dando o comando 'plot sin(x)'
- Poderá ainda experimentar algumas demonstações que se encontrar no site do gnuplot.
Início
3. Como executar o gnuplot
-
O programa, em unix é executado a partir dum terminal: gnuplot
- Em Microsoft Windows pode executar-se a aplicação: wgnuplot ou
gnuplot na janela de comandos
Início
4. Exemplo duma função gerada por um programa: sin
int main ()
{
FILE *fich1 ;
double x, dx, xf ;
x = - 2. * M_PI;
xf = 2. * M_PI;
dx = 0.01;
fich1 = fopen ("func_sin.txt","wt");
while (x < xf)
{
fprintf (fich1, "%lf %lf\n", x, sin(x));
x += dx;
}
fclose (fich1);
return 1;
}
Início
5. Como criar um gráfico dada uma função
- A maneira mais simples de criar um gráfico da função 'sin':
plot sin(x)
- Para traçar o gráfico da função 'f(x) = sin(x*a)' para os valores a=0.2 e a=0.4:
plot f(x) = sin(x*a), a = .2, f(x), a = .4, f(x)
- Para fazer o gráfico dando os valores limites dos eixos:
plot [t=1:10] [-1.1:1.1] sin(t)
- Para representar duas funções em intervalos definidos:
plot [t=-pi:pi] [-1.3:1.3] [-1:1] sin(t),t**2-1
- Para representar duas funções em intervalos definidos, com títulos:
plot [t=-pi:pi] [-1.3:1.3] [-1:1] sin(t) title "Função sin(x)", t**2-1 title "Função t^2-1"
- Declarar uma função e depois executar o seu gráfico:
func1(x) = x**2 - 5*x + 6
plot [0:6] func1(x)
Início
6. Como criar um gráfico a partir de um ficheiro de dados
- A maneira mais simples de criar um gráfico é:
plot "func_sin.txt" using 1:2
- Se quisermos traçar linhas:
plot "func_sin.txt" using 1:2 with lines
- Se quisermos traçar pontos:
plot "func_sin.txt" using 1:2 with dots
Início
7. Como criar um gráfico a partir de um ficheiro de comando
Download exemplo:
gnuplot_Cria_Imagem_LaTeX.zip
- É igualmente possível construir um ficheiro de comandos para
criar um ficheiro '.tex' capaz de ser integrado num texto em LaTeX. Este ficheiro
de comandos 'gnuplot_faz__sin.txt' contém igualmente um conjunto de especificações
sobre o gráfico a representar:
reset
set terminal push
set terminal latex
set output "eg1.tex"
set format y "$%g$"
set format x "$%.2f$"
set title "sin(x)"
set xlabel "Este é o eixo dos $x$"
set ylabel "Este é o $sin(x)$"
unset key
set xtics -pi,pi/4
plot [-pi:pi] [-1:1] sin(x)
para a sua execução:
$ gnuplot;
load "gnuplot_faz__sin.txt";
quit
Início
8. Como criar um gráfico a partir de um ficheiro de comando
Início
9. Como exportar um gráfico para LaTeX
Download exemplo:
gnuplot_Cria_Imagem_LaTeX.zip
- Para cria uma folha de texto com o gráfico anterior, pode o
usar-se o ficheiro 'ler_figura.tex':
\documentclass[12pt]{article}
\usepackage[latin1,utf8]{inputenc}
\usepackage[portuges]{babel}
\begin{document}
\input{eg1.tex}
\end{document}
- Para compilar o ficheiro LaTeX:
$ latex ler_figura.tex
- Para compilar o ficheiro LaTeX (transforma o ficheiro '.tex' num '.dvi'):
$ latex ler_figura.tex
- Para visualizar um ficheiro '.dvi':
$ xdvi ler_figura.dvi
- Para converter um ficheiro '.dvi' num '.pdf':
$ dvipdf ler_figura.dvi
- Para converter um ficheiro '.dvi' num '.ps':
$ dvips ler_figura.dvi
- Nota é igualmente possível compilar um ficheiro LaTeX e convertê-lo
directamente num '.pdf';
$ pdflatex ler_figura.tex
Início
10. Como criar uma imagem a partir de uma gráfico
Para criar uma imagem a de um gráfico em 'png' fazer no 'gnuplot':
set term png
set output 'plot.png'
(depois dar a ordem de 'plot')
exit
Para criar outros tipos de output usar terminais 'jpeg', 'pdf', 'git', etc.
Início
11. Como executar um gráfico a partir de um programa
Download exemplo:
gnuplot_ProgGraf.zip
- Cria-se um ficheiro com os dados com os quais se pretende fazer
o gráfico. Exemplo:
fprintf (fich1, "%12.4f %12.4f %12.4f %12.4f\n", x1, y1, z1, exp(x1));
- Uma vez concluído o ficheiro, dá-se a ordem para a realização
do gráfico:
system ("gnuplot Exec_Gnuplot");
em que 'Exec_Gnuplot' é um ficheiro que contém as ordens de execução do gráfico:
set term x11
set macros
style1 = "lines lt 1 lw 2 title \"Metodo de Euler\""
style2 = "lines lt 3 lw 2 title \"Metodo de Runge-Kutta\""
style3 = "lines lt 2 lw 2 title \"Funcao Exponencial\""
range1 = "using 1:2"
range2 = "using 1:3"
range3 = "using 1:4"
plot "Prog__Data.txt" @range1 with @style1, "Prog__Data.txt" @range2 with @style2,\
"Prog__Data.txt" @range3 with @style3
pause mouse button1,keypress
O gráfico é fechado com um 'click' do rato sobre o gráfico.
Início
12. Documentação e links úteis
Início
|
|