Mini-Curso: gnuplot

Post on 08-Aug-2015

409 views 5 download

Transcript of Mini-Curso: gnuplot

1ª Oficina de Física Computacional

minicurso: gnuplot

gnuplot >linguagem de script para gerar gráficos em 2D e 3D pela linha de comando.

Dias 02 a 06 de Fevereiro de 2015

Prof. Dr. Antonio Soaresantonio.soares@ifma.edu.br

Departamento de Física

http://www.gnuplot.info

Minicurso: gnuplot

Primeira parte

● O que é gnuplot? Para que serve?

● Aquisição e Instalação

● Comandos Operacionais básicos

● Notação e Operações Interativas

● Gráficos Bidimensionais - plot

● Personalizando o Gráfico

● Funções Definidas por partes – Operador Ternário

● Gráficos Tridimensionais - splot

Segunda parte

● Modo Multiplot

● Gravação de Gráficos em Arquivo

● Leitura de Arquivos Externos

● Arquivos de Script Simples

● Curvas Parametrizadas no R² e R³

● Superfícies Parametrizadas

● Gráfico Polar

● Recursos Adicionais: se houver tempo.

gnuplot● O que é gnuplot?

– É um aplicativo matemático destinado a criação e visualização de gráficos e superfícies.

– Ele atende diversas áreas que operam com gráficos, como matemática, estatística, física, engenharias (civil, elétrica, cartográfica, ambiental, …), etc.

– Foi desenvolvido para auxiliar cientistas e estudantes a visualizar gráficos (2D e 3D) baseados em funções matemáticas ou em arquivos de dados.

– É um aplicativo de uso livre e tem versões para vários sistemas operacionais, entre os quais: Windows, Unix, Linux, OS/2, DOS, Android (versão limitada), etc.

Onde encontrar o gnuplot?

http://www.gnuplot.info (Página oficial)http://sourceforge.net/projects/gnuplot/files/gnuplot/4.6.0/

Instalação do gnuplot

Terminada a instalação, inicie o programa gnuplot, executando a seguinte sequência de comandos.

Botão IniciarTodos os Programasgnuplot ---> gnuplot 4.6

Exemplos de gráficos gerados utilizando este aplicativo

Exemplos de gráficos gerados utilizando este aplicativo

Ambiente de Trabalho: Terminal – tela modo texto

Para sair do programa, basta escrever, na linha de comando gnuplot >, a instrução exit ou quit, e em seguida, acionar a tecla <Enter>.

Para limpar a tela do terminal, basta escrever após o prompt, gnuplot >, a instrução !clear ( ! é uma espécie de gerenciador – entra no modo shell )

Não há diferença entre executar o programa gnuplot.exe (versão console)

ou o wgnuplot.exe (interface gráfica), o resultado final é sempre o mesmo.

Tela gráfica

Tela modo texto

Modos de trabalho

✔ Diretamente a partir da linha de comando, como o Maple,

MatLab, Octave, Scilab, Shell, etc.

✔ A partir de um arquivo script (do tipo ASCII) que pode ser

carregado usando a opção load “arquivo”.

✔ A partir de um arquivo em BAT, no qual o aplicativo e o arquivo

script são ativados simultaneamente, sem a necessidade de

executar o programa wgnuplot.exe.

✔ A partir de um programa escrito em linguagem C/C++, Fortran,

linguagem Lua, entre outras.

● Para utilizar o gnuplot, é preciso informar comandos que produzam ações em seu ambiente. Esses comandos podem ser formados por uma ou mais palavras reservadas.

● Principais comandos do gnuplot (grafados em letras minusculas)

Comandos Operacionais Básicos

clear limpar a tela de apresentação de gráficos

exit ou quit encerrar a execução do programa

help apresentar o modo de ajuda do programa

load chamar um arquivo externo - script

plot desenhar um gráfico bidimensional na tela gráfica

print apresentar o resultado de uma expressão fornecida

replot redesenhar um gráfico de acordo com o último plot ou splot

reset redefinir os valores padrão após o uso do comando set

set definir as configurações (eixos, títulos, cores, símbolos, etc)

splot desenhar um gráfico tridimensional na tela gráfica

test testar a capacidade gráfica do terminal e a paleta de cores

unset redefinir o estado alterado pelo comando set

Notação e Operações Interativas

● Notação Computacional ● Funções Matemáticas

● Operadores Aritméticos

Comentários: tudo após o tralha (#)

Aprendendo com Exemplos: comando print

O comando print – é usado para apresentar o resultado de uma expressão fornecida: numérica, algébrica, ou uma cadeia de caracteres. Podemos usá-lo como uma 'calculadora', para realizar operações fundamentais.

Gráficos Bidimensionais● Comando plot em ação

● Modificador de configuração – comando set

● Principais complementos do comando set:

grid exibir uma grade no plano cartesiano

zeroaxis traçar os eixos X e Y do plano cartesiano

xrange[ini:fin] modificar o domínio (eixo X) da função

yrange[ini:fin] modificar o contra-domínio (eixo Y) da função

title “texto” permite definir um título de identificação para o grafico

xlabel “texto” define o título do eixo X

ylabel “texto” define o título do eixo Y

xtics val_x mudança da escala do eixo das abscissas

ytics val_y mudança da escala do eixo das ordenadas

mxtics num_x permite marcar os tics entre xtics

mytics num_y permite marcar os tics entre ytics

clear limpar a tela gráfica (seja no linux ou no windows)

!clear limpar o ambiente de trabalho (terminal) no Linux/Unix

!cls limpar o ambiente de trabalho (terminal console) no windows

● Recursos de informação: help, pwd, show, test

● Sintaxes do plot:

● Simples: plot {<função> | “nome_arquivo”}

help apresentar o modo de ajuda do programa

pwd apresentar o nome do diretório de trabalho em uso

show apresentar a configuração de certo parâmetro do ambiente

test visualizar as cores, bem como os formatos dos pontos

● Geral: plot {<faixa>} {<função> | “nome_arquivo” {modificadores}} {axes <axes>} {title “texto” | notitle} {with <estilo da linha>} {, novas definições }

● Recursos de limpeza: clear, !clear, !cls

Aprendendo com Exemplos - Gráficos 2D

reset Retorna as configurações ao modo padrão

unset Redefine o estado alterado pelo comando set

replot Redesenha o gráfico com as útimas alterações

● Função do 1º Grau

Aprendendo com Exemplos - Gráficos 2D

replot Tem também a funcão de desenhar gráficos sobrepostos

● Funções do 2º Grau

Aprendendo com Exemplos - Gráficos 2D

● Funções Trigonométricas

plot Também permite a sobreposição de gráficos, desde que as funções sejam separadas por vírgulas

plot com uma função não há sobreposição e sim substituição

Aprendendo com Exemplos - Gráficos 2D

● Funções Exponenciais

Aprendendo com Exemplos - Gráficos 2D● Funções Trigonométrica Inversas

Aprendendo com Exemplos - Gráficos 2D

● Definição de funções ● Gráficos Sobrepostos

plot sobreposição de gráficos, a partir das definições das funções com o comando plot.

Personalizando o Gráfico - INesta seção são apresentados comando que possibilitam mudar

alguns atributos dos gráficos construídos com o gnuplot.

Modificadores de Cor e Formato das Linhas

Cor Formato de Linhas Comando: with (w)

Opções (Largura, Tipo e Tamanho)

linecolor (lc) lines (l) linewidth (lw)

linetype (lt) points (p) linetype (lt)

linestyle (ls) linespoints (lp) linestyle (ls)

linecolor rgb “nome_cor” impulses (i) pointtype (pt)

dots, steps, financebars pointsize (ps)

● Mudar formato: plot f(x) with <estilo_linha> {opções}

● Mudar só a cor: plot f(x) <comando_cor> {opções}

Sintaxes do plot:

Personalizando o Gráfico – Cont.

Para visualizar as cores, bem como o formato das entidades

pontuais de apresentação no gráfico, basta ativar, no prompt do

programa, o comando test.

Há uma combinação

de diferentes tipos de

pontos em nove

cores possíveis.

Exemplos – Gráficos personalizados

● Mudando cor e a espessura ● Gráficos Sobrepostos

Exemplos – Gráficos personalizados

● Mudando formato e a espessura ● Gráficos Sobrepostos

Exemplos – Gráficos personalizados

● Mudando formato e a espessura ● Gráficos Sobrepostos

Personalizando o Gráfico - IIAgora, veremos como se faz a modificação do conteúdo e da

posição da legenda de um gráfico.

Modificador de Posição da Legenda: set key

right top (padrão) canto superior direito

right bottom canto inferior esquerdo

left top canto superior esquerdo

left bottom canto inferior esquerdo

center centro da área do gráfico

outside | inside legenda fora (dentro) da área do gráfico

below legenda fora e abaixo da área do gráfico

at x,y define a posição da legenda na coordenada informada

on | off ativa legenda (desativa legenda)

Para mais informações sobre o comando key: show key ou help key

Personalizando o Gráfico - IIPara modificar o texto da legenda, usa-se o complemento

opcional title seguido do texto a ser escrito, na mesma linha de

instrução do comando plot (ou replot).

Para impedir a exibição da legenda: notitle

Para não ser incluído nenhum texto na legenda: title “ ” | t “ ”

● plot f(x) title “texto_legenda” with <estilo_linha> {opções}

● plot f(x) title “texto_legenda” <comando_cor> {opções}

Sintaxes do plot com alteração da legenda do gráfico:

● plot f(x) t “texto_legenda” <comando_cor> {opções}

● plot f(x) t “texto_legenda” with <estilo_linha> {opções}

Exemplos – Gráficos personalizados● Mudando conteúdo e posição da legenda

Exemplos – Gráficos personalizados● Problema da Partícula Livre em um Poço Potencial Infinito

Funções Definidas por Partes - Operador Ternário

Um operador disponível no aplicativo gnuplot que é bastante usado

para efetivar tomadas de decisão, é o operador ternário.

A estrutura sintática deste operador é a seguinte:

(condição)? [ação A - cond. Verdadeira] : [ação B – cond. falsa]

Em uma ação ternária, se a condição é verdadeira, executa-se a

ação A, caso contrário, executa-se a ação B.

Normalmente este operador é utilizado na definição de funções que

dependem de alguma condição pré-determinada: tipo funções definidas

por partes, e funções definidas por desigualdades.

Exemplos com Operador Ternário

● Definição de duas funções, chamadas min(a,b) e max(a,b), que

retornam, respectivamente, o menor e o maior valor entre dois valores

fornecidos.

Exemplos com Operador Ternário

● Função definida por partes:

set label <tag> “texto” at <x,y> tc lt <n> para escrever textos na posição e cor desejada no gráfico

Exemplos com Operador Ternário

● Função definida por partes:

Indeterminação do tipo 0/0 ou 1/0 no operador ternário, simplesmente deixa de traçar a função.

Gráficos Tridimensionais

● Comando splot em ação

trabalha com funções de duas variáveis, ou tabelas com no mínimo três colunas. É extremamente semelhante ao plot.

● Complementos básicos do comando set para gráficos 3D:

zrange[ini:fin] muda o limite (intervalo) do eixo Z

zlabel “texto” define o título do eixo Z

ztics val_z mudança da escala do eixo Z (das cotas)

mztics num_z permite marcar os tics entre ztics

● Sintaxes do splot:

● Simples: splot {<função> | “nome_arquivo”}

● Geral: splot {<faixa>} {<função> | “nome_arquivo” {modificadores}} {title “texto” | notitle} {with <estilo da linha>} {, novas definições }

Aprendendo com Exemplos - Gráficos 3D

reset Retorna as configurações ao modo padrão

unset Redefine o estado alterado pelo comando set

replot Redesenha o gráfico com as útimas alterações

Personalizando: Efeito sólido - hidden3dA fim de melhorar a visualização do gráfico 3D, é possível ocultar as linhas

da parte de trás da curva. Para tanto, use a instrução set hidden3d

Para melhorar a malha gráfica dos gráficos 3D, alteramos a quantidade de

pontos, com a instrução set isosamples n_x, n_y (set samples n_x (2D))

Personalizando: Curvas de Nível - contour

Para traçar as curvas de nível, utiliza-se a instrução set contour. Estas

podem aparecer no plano (base), na superfície (surface) ou em ambos (both)

show contour exibe as definições correntes sobre as curvas de nível

help contour exibe informações do manual sobre curvas de nível

help cntrparam exibe diversos estilos e comportamentos sobre os contornos

Estilos para Curvas de Nível - cntrparam

Para definir estilos para curvas de nível, tipo: qual o desnível entre as curvas

sucessivas, dentre outros elementos, utiliza-se a instrução set cntrparam.

levels discrete z1, z2, z3, ... curvas de nível discretas

levels incremental z_inf, z_inc, z_sup curvas de nível incrementadas

Personalizando: Planos - xyplanePara alterar a posição do plano cartesiano de apresentação de um gráfico

3D, usa-se a instrução set xyplane, ou na forma absoluta (set xyplane at)

ou na forma relativa (set xyplane relative). Veja as diferenças no exemplo:

O valor 0.5 que é uma fração da amplitude do eixo das cotas, é o valor

padrão do programa gnuplot.

Personalizando: Paleta de Cores - pm3dPara associar uma mapa de cores a uma superfície, utiliza-se a instrução

set pm3d, com as opções at s (surface) ou at b (base) ou at t (top).

help pm3d exibe informações sobre diversos estilos para a paleta de cores

Estilos para Paleta de Cores - paletteA modificação na escala de cores do mapa de paleta (pm3d), é feita usando

a instrução set palette, com as opções gray (cinza) ou color (colorida).

help palette exibe informações de estilos para o mapa de paleta

palette defined para exibição manual de cores: (val1 “cor1”, val2 “cor2”, … )

unset colorbox desativa a caixa de cores do mapa de paleta

Segunda Parte - gnuplot

● Modo Multiplot

● Gravação de Gráficos em Arquivo

● Leitura de Arquivos Externos

● Arquivos de Script Simples

● Curvas Parametrizadas no Plano e no Espaço

● Superfícies Parametrizadas

● Gráfico Polar.

● Recursos Adicionais: se houver tempo.

Visualizando o Modo Multiplot

● Modo multiplot em ação

permite a apresentação de vários gráficos na mesma tela, mas de forma

separada e sem sobreposição. Para ativá-lo, executa-se a instrução set

multiplot, e para desativá-lo, executa-se unset multiplot.

size divide a tela em sub-áreas, fixando o tamanho do gráfico.

origin define a origem do gráfico a ser desenhado na tela

● Os complementos do set no modo multiplot:

A medida padrão do complemento size é 1,1. O tamanho padrão da tela vai

de 0,0 a 1,1. Normalmente, em conjunto com a instrução set origin, utiliza-se

a instrução plot na mesma linha, separados por ponto e vírgula.

Exemplo 1 – Modo Multiplot

set size 1, 0.5 Divide a tela em duas áreas (comprimento 1, e largura 0.5)

set origin 0, 0.5 Determina a primeira área

set origin 0, 0 Determina a segunda área

Exemplo 2 – Modo Multiplot

set size 0.5, 0.5 Divide a tela em quatro áreas (comp - 0.5, e largura 0.5)

set origin 0, 0.5 Determina a primeira área

set origin 0, 0 Determina a segunda área

set origin 0.5, 0.5 Determina a terceira área

set origin 0.5, 0 Determina a quarta área

Exemplo 3 – Modo Multiplot

set size 0.5, 0.5 Divide a tela em quatro áreas (comp - 0.5, e largura 0.5)

set origin 0, 0.5 Determina e usa primeira área

set origin 0, 0 Determina e usa segunda área

set origin 0.5, 0 Define set size 0.5, 1, e usa a última área

Gravação de Gráficos em Arquivos

terminal define o tipo de terminal que será utilizado (tipo de extensão)

output define o nome do arquivo e sua extensão, entre aspas duplas

● Os complementos do set para redirecionamento de fluxo:

Para gravar um gráfico como um arquivo de imagem, é necessário

direcionar o fluxo de saída para um arquivo gráfico. Para tanto,

basta utilizar os complementos terminal e output do comando set

● set terminal <nome_terminal>

● set output “nome_arquivo.extensão”

● plot (ou splot ou replot) f(x) …

● set terminal <padrão>; replot Em geral, o padrão é: wxt

Sintaxe do redirecionameto de fluxo:

Lista de Terminais para Gravação.

Para visualizar uma lista completa dos recursos que podem ser

ativados e desativados pelo comando terminal, basta executar, no prompt

do programa, a instrução: set terminal (ou ?terminal ou set term)

Para maiores informações, digite o nome do terminal desejado em:

Subtopic of terminal: jpeg ou postscript ou pdfcairo ou png

Principais:

● jpeg

● postscript

● pdfcairo

● png

● wxt (padrão)

Exemplo 1 – Gravando em Arquivo: png

pwd para apresentar o nome do diretório de trabalho em uso

cd para mudar o diretório de trabalho: cd “..\Minhas Imagens”

shell apresenta uma tela de linha de comando do sistema operacional em uso

Comandos Importantes quando se trabalha com arquivos:

Exemplo 2 – Gravando em Arquivo: pdf

Veja o uso do pwd para apresentar o local onde está salvo o arquivo do gráfico

e o uso do set output forçando a saida do terminal pdfcairo

Leitura de Arquivos ExternosAté este tópico, foram criados gráficos com base em funções. Agora,

veremos como se faz para produzir gráficos a partir de dados lidos

em arquivo.

Para utilizar arquivos externos, eles devem ser gravados em

formato de texto puro (apenas códigos ASCII), normalmente com

extensão .txt. Porém, qualquer extensão é válida desde que o arquivo

esteja gravado no formato ASCII puro.

Sintaxes dos comando plot (ou splot):

● plot “nome_arq.txt” with <estilo_linha>

● plot “nome_arq.txt” using 1:2 with <estilo_linha>

● plot “nome_arq.txt” using ($1):($2) with <estilo_linha>

● splot “nome_arq.txt” using ($1):($2):($3) with <estilo_linha>

Observações sobre a Leitura de Arquivos● Os dados nos arquivos devem estar baseados em colunas;

● Se o gráfico é 2D (3D), duas (três) colunas serão usadas;

● O arquivo de dados deve estar no diretório de trabalho do usuário.

● Os dados devem estar separados pelo uso da tecla <Tab>, senão,

use a instrução set datafile separador “tipo” ;

● A princípio, o uso de plot “...” using 1:2 e plot “...” using ($1):($2)

não faz diferença, se a intenção for visualizar a coluna 1 “contra” a

coluna 2;

● A diferença ocorre quando há intenção de fazer operações com os

dados da coluna. Nesse caso, usa-se a versão com ($1):($2)[:($3)].

Exemplo 1 – Leitura de Arquivo● Arquivo produzido em um editor de textos, de nome: corrente.txt

Exemplo 2 – Leitura de Arquivo● Arquivo produzido em um editor de textos, de nome: vendas.txt

Exemplo 3 – Leitura de Arquivo● Arquivo produzido em um editor de textos, de nome: vendas.txt

● splot “nome_arq.txt” u ($1):($2):($3) w <estilo_linha> {opçoes}

Exemplo 4 – Leitura de Arquivo● Arquivo produzido em um editor de textos, de nome: estoque.txt

Exemplo 5 – Leitura de Arquivo● Arquivo produzido em um editor de textos, de nome: produção.txt

smooth frequency associa a cada x um valor para y em ordem

Arquivos de Script SimplesAté este tópico, todos os gráficos foram gerados de maneira

interativa, ativando instruções no prompt do programa linha por linha.

Uma alternativa mais prática é criar arquivos de script que guardem

instruções, os quais podem, posteriormente, ser carregados e

executados.

Scripts, de maneira geral, são programas escritos na linguagem do

gnuplot. A criação de script é feita com um editor de textos, gravados

no formato texto puro, com a extensão .plt ou .gnu.

Sintaxes para rodar arquivos script:

● > load “nome_arq.plt” (no aplicativo - dentro do gnuplot)

● $ gnuplot nome_arq.plt (no terminal do S.O. - fora do gnuplot)

Etapas para a Criação de ScriptEm um editor de textos, escreva todas as instruções que geraria o

gráfico e grave-o com o nome, por exemplo, script.plt no seu diretório

padrão de trabalho. Este arquivo é um arquivo script.

● Sua execução é feita por:

> load “script.plt”

$ gnuplot script.plt

O comando pause tem por finalidade estabelecer uma pausa no qual o

comando é colocado. Sua sintaxe é: pause <tempo> {“cadeia”}

A tela gráfica com a imagem

do gráfico definido no script.

● Resultado:

Aprendendo com Exemplos – script01.gnu

Aprendendo com Exemplos – script02.gnu

Aprendendo com Exemplos – f_composta.gnu

Aprendendo com Exemplos – multiplot.gnu

A execução deste script foi realizada fora do aplicativo gnuplot. Nesse caso, usa-

se a instrução: gnuplot <nome_script>

Aprendendo com Exemplos – corrente.gnu

Curvas Parametrizadas

Até este tópico, trabalhamos com gráficos gerados a partir de funções, em

geral, definidas em termos das variáveis independentes x, y, e z, de acordo

com o uso dos comandos plot e splot.

No entanto, existe uma classe de curvas, ditas parametrizadas, que na

definição exigem que um certo ponto (P) do plano cartesiano, representado por

P(x,y) é definido por funções x = f(t) e y = g(t), em que x e y são

coordenadas a serem consideradas e obtidas por meio das funções f(t) e

g(t), respectivamente, que possuem em comum a variável independente t.

Assim, para traçar gráficos de curvas obtidas por equações paramétricas, é

necessário definir duas funções do tipo: f(t) e g(t), onde t é comum às duas

equações.

Exemplo: Círculo de raio a, e centro na origem. As equações paramétricas

são: x = f(t) = a.cos(t) e y = g(t) = a.sen(t), 0 < t < 2π.

Gráfico de Curvas Parametrizadas no PlanoPara criar gráficos com base em funções paramétricas, utiliza-se a

instrução: set parametric (unset parametric – para desabilitar)

Essa instrução, ao ser executada, apresenta a mensagem dummy

variable is t para curves, u/v for surfaces, informando que a variável

independente t está ativa para traçar as curvas de equações paramétricas e as

variáveis u e v estão ativas para traçar gráficos de superfície.

Sintaxe para gerar curvas a partir de funções paramétricas

● Modo não paramétrico: x, y e z – variáveis independentes● Modo paramétrico: t, u e v – variáveis independentes

● set parametric

● plot f(t), g(t)

● unset parametric

Lembrando que:

Aprendendo com Exemplos - Curvas 2D● Círculo definido por equações paramétricas: f(t)=sen(t) e g(t)=cos(t)

dummy t No modo paramétrico, a variável independente t é destinada somente a gráficos bidimensionais.

Aprendendo com Exemplos - Curvas 2D● Curva parametrizada pelas equações: f(t)=sen(3t) e g(t)=cos(5t)

Problema: Teste gerar as instruções sem estar no modo paramétrico.

Aprendendo com Exemplos - Curvas 2D● Curva definida pelas equações: f(x)=sen(3x/2).cos(2*x/5) e g(x)=x/2

1º Gráfico Modo não paramétrico

2º Gráfico Modo paramétrico

Aprendendo com Exemplos - Curvas 2D● Curva cardióide: f(t)=(1+cos(t)).cos(t) , g(x)=(1+cos(t)).sen(t)

1º Gráfico Modo não paramétrico

2º Gráfico Modo paramétrico

Gráfico de Curvas Parametrizadas no EspaçoO uso da instrução set parametric ativa na memória a variável

independente t, que somente opera com duas referências, ou seja, f(t) e g(t).

Para apresentar curvas no espaço, é necessário ativar outra variável

independente, diferente da variável t, e, para isso, é preciso utilizar a

instrução set dummy após o uso da instrução set parametric.

Sintaxe para gerar curvas no R³: ● set parametric

Para voltar ao estado normal: unset dummy; unset parametric

● set dummy <var>● splot f(<var>), g(<var>), h(<var>)

Complemento adicional do set: dummy

A instrução set dummy tem por objetivo mudar as variáveis

independentes padrão do programa. Sintaxe: set dummy <var>

Aprendendo com Exemplos - Curvas 3D● Curva helicoidal de equações: f(u)=sen(u), g(u)=cos(u), u

set urange[ini:fin] esse recurso se assemelha à instrução set xrange[ini:fin]

Superfícies Parametrizadas

Para traçar as superfícies obtidas por equações paramétricas, é necessário

definir três funções do tipo: f(u,v), g(u,v) e h(u,v), onde u, v são comuns às

três equações.

Por se tratar de gráficos com base em funções paramétricas, aqui, também

se utiliza a instrução: set parametric (unset parametric – para desabilitar)

Como vimos anteriormente, essa instrução, ao ser executada, informa que

as variáveis u e v são as variáveis ativas para traçar gráficos de superfície.

Sintaxe para gerar superfícies a partir de funções paramétricas:

set parametric

splot f(u,v), g(u,v), h(u,v)

unset parametric

Exemplo 1 – Superfície Parametrizada● Esfera Parametrizada: (cos(u)cos(v), 2sen(u)cos(v), 3sen(v))

set grid xtics ytics ztics traça uma grade exatamente nos rótulos da escala

help grid para obter mais informações sobre os estilos da grid

unset surface comando para esconder a superfície

Exemplo 2 – Superfície Parametrizada● Cilindro Circular Reto: (cos(u), sen(u), v)

unset border para esconder as bordas do gráfico

unset tics para esconder os valores da escalas nos eixos

set urange (vrange) comando equivalente aos xrange, yrange e zrange

Exemplo 3 – Superfície Parametrizada● Prisma Hexagonal: (cos³(u)cos³(v), cos³(u)sen³(v), sen³(u))

set key box lc 1 legenda envolvida por uma caixa com estilo de cor vermelha

Exemplo 4 – Superfície Parametrizada● Concha parametrizada: f(u,v) = cos(u)*u*(1+cos(v)/2), g(u,v) = sin(v)*u/2,

h(u,v) = sin(u)*u*(1+cos(v)/2 )

set autoscale z comando para liberar a escala do eixo z (deixa livre)

Gráfico Polar

Para utilizar coordenadas polares, é preciso usar a instrução set polar, que

ativa esse modo de trabalho. Nesse modo, a variável independente é t para

as curvas.

O plano cartesiano, baseado nas coordenadas x e y, é muito conhecido e

bastante utilizado, mas existem outras formas de representar dados em

gráficos. Uma delas é por meio das coordenadas polares, representadas por r

(raio) e teta (ângulo).

Sintaxe: (modo de coordenadas polares)

● set polar

● plot f(t) # perceba que há apenas uma referência: f(t)

● unset polar # para desativar o modo polar

Exemplo 1 – Gráfico Polar● Curva definida pela equação: f(t) = 1 - sen(t)

1º Gráfico Modo cartesiano

2º Gráfico Modo polar

Exemplo 2 – Gráfico Polar● Curva definida pela equação: f(t)=exp(cos(t))-2cos(4t) + [sen(t/12)]**5

● Estilo de uma Borboleta

set samples n: Aumenta a malha gráfica. Teste com estilo impulses

Recursos AdicionaisNesta seção são apresentados mais alguns complementos do

comando set, em ordem alfabética.

● angles usado para alterar o modo de operação do programa, que pode ser degrees (graus) ou radians (radianos). O padrão é o radians.

Recursos Adicionais● format usado para formatar os rótulos dos dados nos eixos cartesianos.

Exemplos: set format x “%.2f”; set format y “%.3f”

Recursos Adicionais● style functions usado para alterar o modo padrão de desenho dos

gráficos. O modo padrão é lines.

Bibliografia● JANERT, P. K. Gnuplot in Action: Understanding Data with Graphs.

Greenwich: Manning Publications Co., 2010

● WILLIAMS, T.; KELLEY, K. Gnuplot 4.6: An Interactive Plotting Program.

Disponível em: <http://www.gnuplot.info/docs_4.6/gnuplot.pdf>.

● MANZANO, J. A. N. G. Gnuplot: guia de introdução e aplicação, 1º ed. São

Paulo: Érica, 2013.

● GALO, M. Introdução ao uso do aplicativo Gnuplot. Disponível em: <

http://www2.fct.unesp.br/docentes/carto/galo/web/gnuplot/fct.htm>. UNESP –

Universidade Estadual Paulista, Presidente Prudente.

● VIANA, P. A. Introdução ao aplicativo gnuplot. UFPA – Universidade Federal

do Pará. Faculdade de Matemática.

● Rodrigues, B. A.; Sodré, U. Gnuplot: Ajustes de Curvas. Londrina-PR.

Obrigado!

Presença e Participação

de Todos