<chapter id="tutorial">

<chapterinfo>
<authorgroup>
<author
><firstname
>Barth</firstname
> <othername
></othername
> <surname
>Netterfield</surname
> <affiliation
><address
><email
>kst@kde.org</email
></address
></affiliation>
</author>
<author
><firstname
>Rick</firstname
> <othername
></othername
> <surname
>Chern</surname
> <affiliation
><address
><email
>kst@kde.org</email
></address
></affiliation>
</author>
</authorgroup>



<copyright>
<year
>2004</year>
<holder
>A Universidade de British Columbia</holder>
</copyright>



</chapterinfo>
<title
>O Tutorial do &kst;</title>



<sect1 id="Welcome">
<title
>Bem-vindo</title>
<para
>Bem-vindo ao &kst;! Em alguns minutos, você estará prestes a explorar as ricas funcionalidades deste pacote de desenho e manipulação de dados. Aqui estão algumas das tarefas que você poderá fazer com o &kst;: </para>

<itemizedlist>
<listitem>
<para
>Imprimir rapidamente vários gráficos, usando apenas a linha de comandos. </para>
</listitem>
<listitem>
<para
>Analisar os dados, usando um conjunto extenso de ferramentas que incluem histogramas, espectros de potência e equações personalizadas. </para>
</listitem>
<listitem>
<para
>Ampliar e reduzir sem esforço as áreas interessantes dos gráficos, usando tanto o rato como o teclado </para>
</listitem>
<listitem>
<para
>Monitorizar dados transmitidos em tempo-real com as capacidades de gráficos em tempo-real do &kst;. </para>
</listitem>
</itemizedlist>
<para
>Este tutorial cobre as bases da instalação, execução e funcionamento do &kst;. Baseia-se na Introdução Rápida ao &kst; Quick Tour de Barth Netterfield. Você está convidado a investigar ainda mais as funcionalidades, em qualquer altura. Todas as funcionalidades estão documentos no resto deste manual.</para>

</sect1>

<sect1 id="commandline">
<title
>Iniciar o &kst; a partir da Linha de Comandos</title>
<para
>Uma utilização normal do &kst; é a produção rápida de gráficos de dados a partir da linha de comandos. Este método de produção de gráficos não necessita praticamente de qualquer conhecimento da interface gráfica do &kst;, produzindo à mesma resultados imediatos e úteis. </para>

<para
>Este tutorial usa um pacote de demonstração de ficheiros de dados que são instalados com o &kst; em <filename class="directory"
>$<envar
>KDEDIR</envar
>/share/apps/kst/tutorial</filename
>, onde o <filename class="directory"
>$<envar
>KDEDIR</envar
></filename
> é o local em que o &kde; está instalado no seu sistema (você poderá descobrir o seu valor com o comando <command
>kde-config --prefix</command
>).</para>

<note
><para
>Se o utilizador tiver uma versão do &kst; anterior à 1.1.0, poderá encontrar os dados do tutorial disponíveis em <ulink url="http://omega.astro.utoronto.ca/kst/tutorial/kst_tutorialdata.tgz"
>http://omega.astro.utoronto.ca/kst/tutorial/kst_tutorialdata.tgz</ulink
>. Obtenha e descomprima o pacote, mudando de seguida para a pasta resultante: <screen
><userinput
><command
>tar -zxvf kst_tutorialdata.tgz</command>
<command
>cd kst_tutorialdata</command
></userinput
></screen>

</para>
</note>

<para
>Para ter uma ideia geral de todas as opções da linha de comandos do &kst;, escreva: <screen
><userinput
><command
>kst --help</command
></userinput
></screen>
</para>
<para
>Será apresentada uma descrição da sintaxe e uma lista de comandos, semelhante à seguinte: <screen
>Utilização: kst [opções do Qt] [opções do KDE] [opções] [ficheiros]

Kst: um programa de visualização de dados.

Opções genéricas
  --help                    Mostrar ajuda sobre as opções
  --help-qt                 Mostrar opções específicas do Qt
  --help-kde                Mostrar opções específicas do KDE
  --help-all                Mostrar todas as opções
  --author                  Mostrar a informação do autor
  -v, --version             Mostrar a informação da versão
  --license                 Mostrar a informação da licença
  --                        Fim das opções

Opções
  -F &lt;ficheiroDados&gt;        Indica o ficheiro de dados: usado para sobrepor uma predefinição de ficheiro KST [|]
  -y &lt;Y&gt;                    Campo para o eixo Y (múltiplos permitidos)
  --ye &lt;equação&gt;            Equação para o eixo Y (múltiplos permitidos)
  -e &lt;E&gt;                    Campo para os erros em Y (múltiplos permitidos)
  -x &lt;X&gt;                    Campo ou intervalo para o eixo X [INDEX]
  --xe &lt;X&gt;                  Vector X para as equações x0:x1:n [INDEX]
  -p &lt;Y&gt;                    Campo para o espectro de potência (múltiplos permitidos)
  -h &lt;Y&gt;                    Campo para o histograma (múltiplos permitidos)
  -r &lt;f&gt;                    Taxa de amostragem para o espectro de potência [60.0]
  --ru &lt;U&gt;                  Unidades para a taxa de amostragem PSD [Hz]
  --yu &lt;U&gt;                  Unidades dos vectores Y [V]
  -l &lt;P&gt;                    O comprimento dos FFTs é 2^P [10]
  -f &lt;F0&gt;                   Primeira trama a ler [-2]
  -n &lt;NS&gt;                   Número de tramas a ler [-2]
  -s &lt;NS&gt;                   Número de tramas a ignorar em cada leitura [-1]
  -a                        Aplicar o filtro 'boxcar' antes de ignorar as tramas
  -m &lt;NC&gt;                   Separar os gráficos em &lt;NC&gt; colunas
  -d                        Mostrar com pontos em vez de curvas
  -g                        Fornecer uma caixa de legenda
  --print &lt;ficheiro&gt;            Imprimir para um ficheiro e sair [&lt;nenhum&gt;]
  --png &lt;ficheiro&gt;              Gravar como um ficheiro PNG e sair [&lt;nenhum&gt;]

Argumentos:
  Ficheiros                     Ficheiros de dados (se -y indicado) ou ficheiro *.kst
</screen>
</para>

<para
>As opções específicas do &kst; estão indicadas sob a secção <literal
>Opções:</literal
>. Sempre que apropriado, são indicados os valores por omissão entre parêntesis rectos, no fim das descrições das opções &mdash; estes valores serão usados para as opções não fornecidas. </para>

<para
>Vejamos em primeiro lugar o ficheiro ASCII <filename
>gyrodata.dat</filename
>, que vem incluído no pacote de demonstração. Os ficheiros ASCII são um dos vários tipos de ficheiros que o &kst; é capaz de ler. Nos ficheiros ASCII, os dados estão organizados em colunas, onde cada coluna corresponde a um campo e onde os números das colunas (a começar por 1, da esquerda para a direita), correspondem aos nomes dos campos. Este ficheiro ASCII em particular contém 3 colunas, tendo deste modo os nomes dos campos 1, 2 e 3. Para produzir um gráfico da primeira coluna, basta escrever: <screen
><userinput
><command
>kst -y 1 gyrodata.dat</command
></userinput
></screen>

</para>
<para
>Serão desenhados todos os dados na primeira coluna: </para>
<screenshot>
<mediaobject>
<imageobject>
<imagedata fileref="Screenshot-kst-tutorial-gyro1.png" format="PNG"/>
</imageobject>
</mediaobject>
</screenshot>
<para
>Repare que não foi indicado qualquer campo para o eixo dos X no gráfico, como tal o &kst; usou o vector INDEX predefinido, como seria de esperar. O vector INDEX é um vector especial no &kst; que contém números inteiros de 0 até N-1, onde o N é o número de valores de dados no vector correspondente no eixo dos Y. Feche o &kst; com a opção <guimenuitem
>Sair</guimenuitem
> do menu <guimenu
>Ficheiro</guimenu
> ou carregando em <keycombo action="simul"
><keycap
>Ctrl</keycap
><keycap
>Q</keycap
></keycombo
>. </para>

<para
>O <filename
>gyrodata.dat</filename
> contém 20 000 tramas, como tal poderá querer ver apenas uma porção dos dados. Para desenhar apenas 10 000 tramas, a partir da trama 7 000, escreva: <screen
><userinput
><command
>kst -y 1 -f 7000 -n 10000 gyrodata.dat</command
></userinput
></screen>

</para>

<para
>Uma das potencialidades do &kst; é a sua capacidade de desenhar dados em tempo-real. Imagine que os dados estão a ser adicionados continuamente ao fim do <filename
>gyrodata.dat</filename
>. Nesse caso, seria útil desenhar apenas a parte mais recente dos dados. Para desenhar apenas as últimas 10 000 tramas do <filename
>gyrodata.dat</filename
>, escreva o seguinte: <screen
><userinput
><command
>kst -y 1 -n 10000 gyrodata.dat</command
></userinput
></screen>
</para>
<para
>Se o <filename
>gyrodata.dat</filename
> estiver a ser actualizado, este gráfico deslocar-se-á continuamente, de modo a desenhar apenas as últimas 10 000 tramas. </para>

<para
>Em vez de ler directamente de um ficheiro de entrada, o &kst; pode usar os dados em ASCII do 'stdin', como sendo uma fonte de dados. Para usar o 'stdin' como entrada de dados, basta escrever <filename
>stdin</filename
> como um dos nomes de ficheiros. Existem várias utilizações desta capacidade, como a utilização do &kst; como parte de uma sequência de 'pipes': <screen
><userinput
><command
>cat gyrodata.dat | awk '{print $1 + 2}' | kst -y 1 stdin</command
></userinput
></screen>
</para>
<para
>O comando acima usa o <command
>awk</command
> para adicionar 2 à primeira coluna do <filename
>gyrodata.dat</filename
>, antes de enviar o resultado para o &kst;. </para>

<para
>Repare que a descrição da opção <option
>y</option
> indica que são permitidas várias instâncias da opção. Isto permite um gráfico rápido de mais que uma curva, ou mesmo mais que um gráfico. Para imprimir todos os três campos do <filename
>gyrodata.dat</filename
> em gráficos separados, indique o seguinte comando: <screen
><userinput
><command
>kst -y 1 -y 2 -y 3 -m 1 gyrodata.dat</command
></userinput
></screen>

</para>
<para
>A opção <option
>m</option
> indica que deverão ser usados gráficos em separado, em vez de apenas um, como é demonstrado em baixo: </para>
<screenshot>
<mediaobject>
<imageobject>
<imagedata fileref="Screenshot-kst-tutorial-gyro-multiple.png" format="PNG"/>
</imageobject>
</mediaobject>
</screenshot>

</sect1>

<sect1 id="datawizard-tour">
<title
>Uma Introdução Rápida ao Assistente de Dados</title>
<para
>Embora o uso do &kst; a partir da linha de comandos seja rápido e conveniente, poderão existir situações em que seja mais simples importar os dados a partir da interface gráfica do utilizador &mdash; por exemplo, se já tiver o &kst; aberto com outros dados carregados ou, simplesmente, porque prefere usar a interface gráfica. Se ficar familiarizado com ambos os métodos de importação de dados, poderá fazer uma utilização mais eficiente do &kst;. </para>

<para
>O Assistente de Dados oferece uma forma rápida e simples de criar vectores, curvas e gráficos no &kst; a partir de ficheiros de dados. Para lançar o assistente, seleccione a opção <guimenuitem
>Assistente de Dados...</guimenuitem
> no menu <guimenu
>Dados</guimenu
> ou carregue no botão <inlinemediaobject
> <imageobject
> <imagedata fileref="Icon-kst-datawizard.png" format="PNG"/> </imageobject
> </inlinemediaobject
> da barra de ferramentas. Será notificado para seleccionar uma fonte de dados. Escolha o ficheiro <filename
>gyrodata.dat</filename
> usado nos exemplos da linha de comandos e carregue em <guibutton
>Próximo</guibutton
>. Será apresentada a seguinte janela: </para>

<screenshot>
<screeninfo
>Ecrã 2 do Assistente de Dados</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="Screenshot-kst-datawizard2.png" format="PNG"/>
</imageobject>
<textobject>
<phrase
>Ecrã 2 do Assistente de Dados</phrase>
</textobject>
</mediaobject>
</screenshot>

<para
>Os campos disponíveis no ficheiro <filename
>gyrodata.dat</filename
> estão indicados à esquerda. Você poderá filtrar a lista de campos seleccionar se indicar uma sequência de correspondência (os caracteres especiais, como o <literal
>*</literal
>, são suportados) no campo de texto por cima da lista. Assinale as opções para os campos <guilabel
>1</guilabel
>, <guilabel
>2</guilabel
> e <guilabel
>3</guilabel
>. </para>

<para
>A secção de <guilabel
>Intervalo de Dados</guilabel
> é usada para definir o intervalo de dados a ler a partir dos vectores seleccionados no ficheiro de entrada. A discussão seguinte assume o conhecimento das <quote
>tramas</quote
>. Em resumo, uma trama é apenas um conjunto de amostras de dados, em que cada ficheiro de dados é composto por um conjunto de tramas. Para uma descrição detalhada deste conceito, veja em <xref linkend="supportingadditionalfileformatsdatasourceconceptsframes"/>. </para>

<variablelist>
<varlistentry>
<term
><guilabel
>Início</guilabel
>, <guilabel
>Contar do fim</guilabel
>, <guilabel
>Intervalo</guilabel
> e <guilabel
>Ler até ao fim</guilabel
> </term>
<listitem>
<para
>Se usar estas quatro opções, poderá definir os limites inferior e superior do intervalo de dados. Por exemplo, seleccione a opção <guilabel
>Contar do fim</guilabel
> e indique 10 000 como <guilabel
>Intervalo</guilabel
>, para ler apenas as últimas 10 000 tramas. Se o <filename
>gyrodata.dat</filename
> estiver a ser actualizado em tempo-real, as adições subsequentes seriam lidas a partir do fim do ficheiro. </para>

</listitem>
</varlistentry>

<varlistentry>
<term
><guilabel
>Ler 1 amostra por N tramas</guilabel
> e <guilabel
>Primeiro o filtro 'boxcar'</guilabel
> </term>
<listitem>
<para
>Para além dos limites inferior e superior, poderão ser definidas as amostras a ler do intervalo seleccionado. Se a opção <guilabel
>Ler 1 amostra por N tramas</guilabel
> (em que o N é o valor introduzido) não estiver seleccionada, todas as amostras no intervalo seleccionado serão lidas. Em alternativa, as tramas no ficheiro de dados poderão ser ignoradas se seleccionar a opção <guilabel
>Ler 1 amostra por N tramas</guilabel
>. Por agora, desligue a opção <guilabel
>Ler 1 amostra por N tramas</guilabel
>. </para>
</listitem>
</varlistentry>
</variablelist>

<para
>A configuração dos espectros de potência e do eixo dos X poderá ser feita na secção <guilabel
>Tipos de Gráfico</guilabel
>. </para>

<variablelist>

<varlistentry>
<term
><guilabel
>XY</guilabel
>, <guilabel
>Espectro de Potência</guilabel
> e <guilabel
>XY e Espectro de Potência</guilabel
> </term>
<listitem>
<para
>Seleccione a opção <guilabel
>XY e Espectro de Potência</guilabel
> para produzir gráficos para os dados em si e para o seu espectro de potência. Para mais informações sobre as opções disponíveis para o espectro de potência, veja em <xref linkend="power-spectra"/>. </para>
</listitem>
</varlistentry>

<varlistentry>
<term>
<guilabel
>Vector do Eixo dos X</guilabel>
</term>
<listitem>
<para
>O vector a usar como vector independente para os gráficos. O utilizador poderá seleccionar um campo a partir do seu ficheiro de dados ou o vector INDEX. Dado que o <filename
>gyrodata.dat</filename
> não contém qualquer vector do eixo dos X, deixe a selecção como INDEX. </para>
</listitem>
</varlistentry>

</variablelist>

<para
>A sub-secção das <guilabel
>Opções do FFT</guilabel
>, na secção <guilabel
>Tipos de Gráfico</guilabel
>, está disponível apenas se for desenhado um espectro de potência. Este tutorial não irá lidar com os detalhes dos espectros de potência, como tal use as opções predefinidas para esta sub-secção. </para>

<para
>Quando estiver satisfeito com todas as opções, carregue em <guibutton
>Próximo</guibutton
> para passar à janela seguinte. </para>

<screenshot>
<screeninfo
>Ecrã 3 do Assistente de Dados</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="Screenshot-kst-datawizard3.png" format="PNG"/>
</imageobject>
<textobject>
<phrase
>Ecrã 3 do Assistente de Dados</phrase>
</textobject>
</mediaobject>
</screenshot>

<para
>A partir daqui, poderá alterar as opções gerais dos gráficos. A maioria das opções são auto-explicativas. Seleccione a opção <guilabel
>1 novo gráfico por curva</guilabel
> para a <guilabel
>Colocação das Curvas</guilabel
> e <guilabel
>Numa nova janela</guilabel
> para a <guilabel
>Colocação do Gráfico</guilabel
>. Isto irá colocar todos os seis gráficos (três curvas e três espectros de potência) na mesma janela. </para>


<para
>Logo que esteja satisfeito com todas as opções, carregue em <guibutton
>Terminar</guibutton
> para gerar os gráficos: </para>
<screenshot>
<screeninfo
>Os Gráficos Gerados</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="Screenshot-kst-tutorial-datawizard-done.png" format="PNG"/>
</imageobject>
<textobject>
<phrase
>Os Gráficos Gerados</phrase>
</textobject>
</mediaobject>
</screenshot>

<para
>A geração destes gráficos deu algum trabalho a fazer, como tal será bom gravar a sessão actual do &kst; (esta será usada na próxima secção deste tutorial). Seleccione a opção <guimenuitem
>Gravar Como...</guimenuitem
> no menu <guimenu
>Ficheiro</guimenu
> e grave a sessão como <filename
>sessao_kst.kst</filename
>: </para>

<screenshot>
<screeninfo
>Gravar uma sessão do KST</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="Screenshot-kst-filesave.png" format="PNG"/>
</imageobject>
<textobject>
<phrase
>Gravar uma sessão do KST</phrase>
</textobject>
</mediaobject>
</screenshot>
<para
>A gravação de uma sessão do &kst; guarda todos os gráficos, objectos de dados (você irá aprender mais sobre estes posteriormente) e as disposições existentes na altura da gravação. </para>
<para
>Logo que o ficheiro tenha sido gravado, poderá sair do &kst;. </para>
</sect1>

<sect1 id="mousezooming">
<title
>As Bases da Manipulação dos Gráficos</title>
<para
>Agora que se sente mais confortável a criar gráficos no &kst;, é possível agora explorar algumas das funcionalidades de manipulação de gráficos que estão disponíveis na interface gráfica do &kst;. Inicie o &kst; a partir da linha de comandos com o ficheiro <filename
>sessao_kst.kst</filename
> que você gravou anteriormente: </para>
<screen
><userinput
><command
>kst sessao_kst.kst</command
></userinput
></screen>
<para
>Todos os gráficos que tenha criado anteriormente estarão agora carregados no &kst;. Veja o gráfico com a legenda no eixo dos Y <literal
>PSD [V/Hz^{1/2}]</literal
>. Para ver mais pormenorizadamente o gráfico, carregue com o botão direito do rato nele e seleccione o item de menu <guimenuitem
>Maximizar</guimenuitem
>, como é mostrado em baixo: </para>
<screenshot>
<screeninfo
>Maximizar um gráfico</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="Screenshot-kst-zoom.png" format="PNG"/>
</imageobject>
<textobject>
<phrase
>Maximizar um gráfico</phrase>
</textobject>
</mediaobject>
</screenshot>

<para
>O gráfico está agora maximizado dentro da janela actual. Repare que o limite superior em X deste gráfico está praticamente plano, pelo que seria útil ver apenas a área do gráfico que parecesse interessante. Para o fazer, certifique-se que está no modo de Ampliação do Rato XY (seleccione <guimenuitem
>Ampliação do Rato XY</guimenuitem
> no menu <guimenu
>Gráficos</guimenu
> ou carregue no botão da barra de ferramentas <inlinemediaobject
><imageobject
><imagedata fileref="Icon-kst-xymousezoom.png" format="PNG"/></imageobject
></inlinemediaobject
>). De seguida, basta arrastar um rectângulo em torno da área interessante. Repare que as coordenadas do cursor do rato estão visíveis no canto inferior direito da janela do &kst; (se não estiverem, verifique se a opção <guimenuitem
>Mostrar a Barra de Estado</guimenuitem
> está assinalada no menu <guimenu
>Configuração</guimenu
>). </para>

<para
>Os eixos do gráfico irão mudar para <quote
>ampliar</quote
> a área seleccionada no gráfico. Poderá reparar que existe um pico do lado esquerdo do espectro de potência que se extende para além do novo limite superior no eixo dos Y. Suponha que deseja ver o topo deste pico. Carregue com o botão direito do rato e seleccione a opção <guimenuitem
>Cima</guimenuitem
> do submenu <guimenu
>Deslocar</guimenu
>. O gráfico dever-se-á deslocar para cima. Claro, provavelmente é mais fácil usar a tecla de atalho associada ao item do menu; isto é verdade para a maioria das funções de ampliação e deslocamento. Neste caso, a tecla de atalho é o cursor para <keysym
>Cima</keysym
>, como tal a forma mais rápida de se deslocar para cima será manter a tecla <keysym
>Cima</keysym
> carregada. Para voltar à ampliação máxima em qualquer altura, carregue com o botão direito no gráfico e seleccione a <guimenuitem
>Ampliação Máxima</guimenuitem
> no submenu <guisubmenu
>Ampliação</guisubmenu
> (ou carregue em <keycap
>M</keycap
>, a tecla de atalho associada à <guimenuitem
>Ampliação Máxima</guimenuitem
>). </para>

<para
>Reponha o tamanho do gráfico do espectro de potência, carregando para tal com o botão direito no gráfico e desligando a opção <guimenuitem
>Maximizar</guimenuitem
>. </para>

<para
>Agora, veja os gráficos com os eixos dos Y intitulados <literal
>Coluna 2</literal
> e <literal
>Coluna 3</literal
>. Estes são gráficos do giroscópio de inclinação e rolamento, respectivamente, do voo BOOMERANG de 1998. Dado que estes dois gráficos estão relacionados, poderá ser útil ampliá-los e posicioná-los em simultâneo. Carregue nos quadrados localizados nos cantos superiores direitos de ambos os gráficos. Eles deverão ficar escurecidos para indicar que os dois gráficos estão agora ligados entre si: </para>

<screenshot>
<screeninfo
>Ampliação Ligada</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="Screenshot-kst-tiedzoom.png" format="PNG"/>
</imageobject>
<textobject>
<phrase
>Ampliação Ligada</phrase>
</textobject>
</mediaobject>
</screenshot>
<para
>Antes de tentarmos ampliar, devemos remover todos os gráficos, excepto aqueles com que estamos a trabalhar. Seleccione o <guimenuitem
>Modo de Disposição</guimenuitem
> no menu <guimenu
>Gráficos</guimenu
> ou carregue no botão da barra de ferramentas <inlinemediaobject
><imageobject
><imagedata fileref="Icon-kst-layoutmode.png" format="PNG"/></imageobject
></inlinemediaobject
>. Para cada gráfico que não seja dos dois a manter, carregue com o botão direito do rato no gráfico e seleccione a opção <guimenuitem
>Remover</guimenuitem
>. Depois, carregue com o botão direito em qualquer lado da janela actual e seleccione a opção <guimenuitem
>Limpar a Disposição</guimenuitem
>. Agora, os dois gráficos deverão partilhar o máximo de espaço dentro da janela. Volte ao modo de Ampliação do Rato XY quando terminar. </para>

<para
>Agora tente ampliar para qualquer parte do gráfico superior. Irá reparar que o gráfico inferior irá ficar em branco. Isto acontece porque os eixos do gráfico inferior foram alterados para corresponder aos do gráfico superior e porque não existem dados nessa região em particular do gráfico inferior. Carregue em <keycap
>M</keycap
>, enquanto o cursor do rato está em cima do gráfico, para voltar à ampliação máxima em ambos os gráficos. Agora, mantenha carregada a tecla <keycap
>Ctrl</keycap
> (isto é equivalente a seleccionar o <guimenu
>Modo de Ampliação do Rato X</guimenu
> do menu <guimenu
>Gráficos</guimenu
> ou a carregar no botão da barra de ferramentas <inlinemediaobject
><imageobject
><imagedata fileref="Icon-kst-xmousezoom.png" format="PNG"/></imageobject
></inlinemediaobject
>). O cursor do rato irá mudar de aspecto para dar uma reacção visual. Enquanto mantém o <keycap
>Ctrl</keycap
> carregado, desenhe um rectângulo no gráfico superior. Repare que a altura do rectângulo pontilhado está restrita, de modo que apenas o eixo dos X seja ampliado. Neste momento, ambos s gráficos irão mostrar dados quando forem ampliados, dado que o eixo dos Y de ambos os gráficos não foi alterado. </para>
<tip>
<para
>Você poderá ligar ou desligar todos os gráficos da janela se seleccionar a opção <guimenuitem
>Ampliação Ligada</guimenuitem
> do menu <guimenu
>Gráficos</guimenu
> ou se carregar no botão <inlinemediaobject
><imageobject
><imagedata fileref="Icon-kst-tiedzoom.png" format="PNG"/></imageobject
></inlinemediaobject
> da barra de ferramentas. </para>
</tip>
<para
>Quando acabar de experimentar as funcionalidades de ampliação, poderá fechar o &kst;. Não existe necessidade de gravar os gráficos nesta altura (a menos que o deseje). </para>

</sect1>



<sect1 id="overviewdataobjects">
<title
>Uma Breve Introdução aos Objectos de Dados</title>
<para
>Existe mais para o &kst; do que apenas a simples visualização e desenho dos dados. A partir do assistente de dados, você já viu que o &kst; tem a capacidade de criar espectros de potência dos dados. De facto, o &kst; também é capaz de criar outros objectos de dados, como os histogramas, equações e 'plugins'. Para o poder ajudar, existe um utilitário chamado Gestor de Dados que o auxilia no registo de todos os objectos de dados que você criar. </para>

<para
>Inicie o &kst; com o ficheiro <filename
>demo.kst</filename
>, que vem incluído no pacote de demonstração: </para>
<screen
><userinput
><command
>kst demo.kst</command
></userinput
></screen>
<screenshot>
<screeninfo
>O Kst com o demo.kst</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="Screenshot-kst-demo.png" format="PNG"/>
</imageobject>
<textobject>
<phrase
>O Kst com o demo.kst</phrase>
</textobject>
</mediaobject>
</screenshot>
<para
>Esta sessão do &kst; contém vectores e outros objectos de dados, criados a partir de dados no <filename
>gyrodata.dat</filename
>. O gráfico superior contém os dados do azimute, o gráfico do meio contém os dados de inclinação a azul e o gráfico inferior mostra o espectro de potência dos dados de inclinação a azul. Vejamos primeiro os gráficos mais de perto. Ligue os dois gráficos do topo em conjunto com as técnicas que aprendeu na secção anterior. Depois, mantenha carregada a tecla <keycap
>Ctrl</keycap
> para entrar no modo de Ampliação do Rato X. Depois, amplie uma pequena região do gráfico superior (por exemplo, de 50 000 até 53 000), para que ambos os gráficos ligados se ampliem. Irá reparar que a curva de inclinação a azul está correlacionada negativamente com a curva do azimute a vermelho. Isto deve-se ao facto de o giroscópio de inclinação ter sido ligeiramente rodado em relação ao eixo do azimute (de -0,69 graus). A inclinação verdadeira <literal
>p'</literal
> é: <informalequation
> <mediaobject
> <imageobject
> <imagedata fileref="Equation-kst-correctedpitch.png" format="PNG"/> </imageobject
> </mediaobject
> </informalequation
> onde o <literal
>p</literal
> é a inclinação original, o <inlinemediaobject
><imageobject
><imagedata fileref="Symbol-kst-theta.png" format="PNG"/></imageobject
></inlinemediaobject
> é a rotação do giroscópio de inclinação em relação ao eixo do azimute e o <literal
>a</literal
> é o giroscópio do azimute. O <literal
>p'</literal
> é desenhado como uma curva a preto no gráfico do meio. O espectro de potência de <literal
>p'</literal
> é a curva a preto no gráfico inferior. </para>

<para
>Agora, vejamos como é que os três gráficos foram criados. Para mostrar o Gestor de Dados, seleccione a opção <guimenuitem
>Gestor de Dados...</guimenuitem
> do menu <guimenu
>Dados</guimenu
> ou carregue no botão da barra de ferramentas <inlinemediaobject
><imageobject
><imagedata fileref="Icon-kst-datamanager.png" format="PNG"/></imageobject
></inlinemediaobject
>: </para>
<screenshot>
<screeninfo
>O Gestor de Dados</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="Screenshot-kst-datamanager.png" format="PNG"/>
</imageobject>
<textobject>
<phrase
>O Gestor de Dados</phrase>
</textobject>
</mediaobject>
</screenshot>

<para
>O Gestor de Dados contém a lista definitiva dos objectos de dados na sessão actual do &kst;. Também lhe permite editar ou criar novos objectos de dados. Como poderá ver, existem seis curvas (cada uma delas criada a partir de um par de vectores), uma equação, dois espectros de potência e quatro vectores de dados. Carregue com o botão direito do rato em C2-GY_PITCH e seleccione <guimenuitem
>W1-P1</guimenuitem
> a partir do submenu <guisubmenu
>Remover do Gráfico</guisubmenu
>. Esta opção remove a curva do gráfico P1 na janela W1. Remova também o C-PSD2-V3-GY_PITCH do gráfico P3 na janela W1, usando o mesmo procedimento. Agora, somente as curvas corrigidas serão apresentadas nos gráficos: </para>

<screenshot>
<screeninfo
>Apenas as Curvas Corrigidas</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="Screenshot-kst-democorrected.png" format="PNG"/>
</imageobject>
<textobject>
<phrase
>Apenas as Curvas Corrigidas</phrase>
</textobject>
</mediaobject>
</screenshot>

<para
>Para ver como é que o giroscópio de inclinação foi criado, seleccione o item 'C4-cleaned_pitch' e carregue no botão <guibutton
>Editar</guibutton
>. A janela para Editar a Equação deverá então aparecer: </para>
<screenshot>
<screeninfo
>Editar Equação</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="Screenshot-kst-editequation.png" format="PNG"/>
</imageobject>
<textobject>
<phrase
>Editar Equação</phrase>
</textobject>
</mediaobject>
</screenshot>

<para
>Repare que a equação usada para calcular o <literal
>p'</literal
> foi introduzida no campo de texto <guilabel
>Equação</guilabel
> (foi usada uma aproximação a 1, para o <literal
>cos(-0,69)</literal
>). Sinta-se à vontade para experimentar a configuração desta janela. Carregue em <guibutton
>OK</guibutton
> (para gravar as alterações feitas) ou em <guibutton
>Cancelar</guibutton
> quando terminar. </para>

<para
>Repare que todos os objectos de dados têm um número indicado por baixo da coluna <guilabel
># Utilizado</guilabel
>. Este número indica o número de vezes que o objecto de dados está a ser usado por outros objectos de dados ou pelos gráficos. Dado que foi removida uma curva e um espectro de potência, pelo menos dois objectos deverão ter um 0 listado nesta coluna. Carregue em <guibutton
>Apagar</guibutton
> para remover permanentemente todos os objectos não usados. </para>

<para
>Carregue em <guibutton
>Fechar</guibutton
> para encerrar o Gestor de Dados. Poderá agora sair do &kst; se o desejar. </para>
</sect1>

<sect1 id="pluginsandevents">
<title
>Uma Vista de Olhos Sobre os 'Plugins' e os Eventos</title>
<para
>Para terminar esta viagem pelo &kst;, vejamos dois tipos de dados específicos &mdash; os 'plugins' e os monitores de eventos. </para>

<para
>Um 'plugin' é um objecto de dados flexível, cujo comportamento depende por inteiro do ficheiro de 'plugin' que foi seleccionado. O ficheiro do 'plugin' poderá ser algum que venha incluído na distribuição normal do &kst;, como ser um ficheiro de 'plugin' de terceiros. Poderá descobrir mais instruções sobre como escrever e compilar os ficheiros personalizados dos 'plugins' em <xref linkend="creatingplugins"/>. Os 'plugins' permitem ao &kst; efectuar operações arbitrárias sobre um conjunto de dados, dado que os únicos requisitos para um ficheiro de 'plugin' são que estes recebam um conjunto de vectores e valores escalares à entrada e devolvam um conjunto de vectores e escalares. </para>

<para
>Por exemplo, será ajustada uma linha simples a um pequeno conjunto de pontos de dados. Inicie o &kst; com um gráfico do primeiro campo do ficheiro de dados <filename
>maxima.dat</filename
> que vem incluído no pacote de demonstração: </para>

<screen
><userinput
><command
>kst -y 1 -d maxima.dat</command
></userinput
></screen>

<para
>A opção <option
>d</option
> indica que apenas os pontos deverão ser desenhados, e não as linhas. O gráfico dos pontos de dados deverá agora estar desenhado: </para>
<screenshot>
<screeninfo
>Gráfico dos Pontos de Dados</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="Screenshot-kst-maxima-datapoints.png" format="PNG"/>
</imageobject>
<textobject>
<phrase
>Gráfico dos Pontos de Dados</phrase>
</textobject>
</mediaobject>
</screenshot>
<para
>Agora abra o Gestor de Dados. Carregue em <guibutton
>'Plugin'...</guibutton
> na secção <guilabel
>Novo</guilabel
> para criar um novo objecto de 'plugin'. Sob a <guilabel
>Selecção do 'Plugin'</guilabel
>, seleccione o 'plugin' <guimenuitem
>Ajuste linear</guimenuitem
>. Este 'plugin' em particular necessita de dois vectores de entrada &mdash; um que contém os valores em X e outro que contém os valores em Y dos pontos de dados a ajustar. Seleccione o <guimenuitem
>INDEX</guimenuitem
> para o <guilabel
>Vector de Entrada - Vector X</guilabel
> e <guimenuitem
>1</guimenuitem
> para o <guilabel
>Vector de Entrada - Vector Y</guilabel
>. Depois, carregue em <guibutton
>OK</guibutton
>. Irá reparar que o novo objecto do 'plugin' criou vectores-escravos para guardar os seus resultados. Carregue em <guibutton
>Curva...</guibutton
> para criar uma curva nova a partir dos vectores de saída. Seleccione o <guimenuitem
>V1-INDEX</guimenuitem
> para o <guilabel
>vector do eixo X</guilabel
> e <guimenuitem
>P1-kstfit_linear_unweighted-Y Fitted</guimenuitem
> para o <guilabel
>vector do eixo Y</guilabel
>. Pretende-se colocar a curva no cimo dos pontos de dados do gráfico existente; para tal, na <guilabel
>Colocação da Curva</guilabel
>, seleccione a opção <guilabel
>Colocar no gráfico existente</guilabel
> e desligue a opção <guilabel
>Colocar num novo gráfico</guilabel
>. Finalmente, carregue em <guibutton
>OK</guibutton
> para criar a curva. Feche o gestor de dados para ver a linha ajustada: </para>

<screenshot>
<screeninfo
>Linha Ajustada</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="Screenshot-kst-fittedline.png" format="PNG"/>
</imageobject>
<textobject>
<phrase
>Linha Ajustada</phrase>
</textobject>
</mediaobject>
</screenshot>

<para
>Um procedimento, semelhante ao seguido por você até agora, permitir-lhe-á criar e desenhar os resultados de qualquer tipo de objecto de 'plugins'. Contudo, existe um atalho para criar 'plugins' de ajuste. Se carregar com o botão direito num gráfico irá desenhar o menu de contexto, que contém um submenu <guisubmenu
>Ajustar...</guisubmenu
>. Se seleccionar uma curva do submenu irá invocar a janela de Função de Ajuste, com os vectores em X e Y pré-seleccionados. Depois de ter seleccionado o 'plugin' de ajuste, quando carregar no botão <guibutton
>OK</guibutton
> irá criar o objecto do 'plugin', criar a curva a partir dos resultados do 'plugin' e colocar a curva no gráfico existente. </para>

<para
>Vejamos então agora os eventos. Os objectos dos eventos normalmente vigiam outros vectores ou valores escalares e efectuam acções específicas, quando forem verdadeiras determinadas condições relacionadas com esses vectores ou valores escalares. Carregue no botão <guibutton
>Monitor de Eventos...</guibutton
> na secção <guilabel
>Novo</guilabel
> do Gestor de Dados para criar um novo evento: </para>
<screenshot>
<screeninfo
>Monitor de Eventos</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="Screenshot-kst-eventmonitor.png" format="PNG"/>
</imageobject>
<textobject>
<phrase
>Monitor de Eventos</phrase>
</textobject>
</mediaobject>
</screenshot>

<!-- FIXME: This seems to be incorrect: the equation given doesn't work -->
<para
>Suponha que os dados do giroscópio de inclinação estavam a ser actualizados em tempo-real e que pretendia obter uma notificação sempre que o giroscópio saísse fora do intervalo <literal
>[-0.60, -0.40]</literal
>. Para configurar o evento desta forma, indique o seguinte no campo de texto <guilabel
>Expressão</guilabel
>: </para>

<para>
<literal
>[C4-cleaned_pitch-sv]&gt;(-0.40) | [C4-cleaned_pitch-sv]&lt;(-0.60)</literal>
</para>

<para
>Repare que tudo o que foi introduzido, como uma expressão, deverá ser uma expressão booleana. Esta expressão em particular será avaliada como verdadeira sempre que qualquer uma das desigualdades for verdadeira. Seleccione tanto a opção <guilabel
>Registar como</guilabel
> como <guilabel
>Notificar</guilabel
> e indique o seu endereço de e-mail à direita da opção <guilabel
>Notificar</guilabel
>. Carregue em <guibutton
>OK</guibutton
> para criar o evento. </para>

<para
>Agora seleccione a opção <guimenuitem
>Depurar o Kst...</guimenuitem
> do menu <guimenu
>Ajuda</guimenu
>. Carregue na página <guilabel
>Registo</guilabel
> para ver o registo de depuração. Se o evento estiver configurado correctamente, deverá agora ver alguns avisos que indicam os valores em X para os quais o evento foi despoletado. Verifique se os valores correspondem aproximadamente aos que esperaria, ao ver o gráfico: </para>

<screenshot>
<screeninfo
>Registo de Depuração</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="Screenshot-kst-debuglog.png" format="PNG"/>
</imageobject>
<textobject>
<phrase
>Registo de Depuração</phrase>
</textobject>
</mediaobject>
</screenshot>

<para
>Se os dados do giroscópio de inclinação estivessem a ser actualizados em tempo-real, o monitor de eventos seria despoletado, sempre que existem novos dados apropriados. </para>

<para
>Quando tiver terminado, poderá fechar o &kst;. </para>
</sect1>


<sect1 id="conclusion">
<title
>Conclusão</title>

<para
>Isto conclui o tutorial do &kst;. Esperamos que você tenha adquirido conhecimentos suficientes para se sentir confortável com o &kst;. Tenha em mente que este tutorial não cobre todas as funcionalidades do &kst; &mdash; existe ainda muito para explorar e experimentar. O resto deste manual é um guia aprofundado sobre conceitos que vão dos fundamentos da disposição da janela até à criação de 'plugins' personalizados e leitores de fontes de dados. Está encorajado a usar o &kst; de formas interessantes e inovadoras &mdash; provavelmente irá concluir que não só corresponde como inclusive excede as suas necessidades e requisitos. </para>
</sect1>


</chapter>

<!-- Keep this comment at the end of the file
Local variables:
mode: xml
sgml-omittag:nil
sgml-shorttag:nil
sgml-namecase-general:nil
sgml-general-insert-case:lower
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:0
sgml-indent-data:true
sgml-parent-document:("index.docbook" "book" "chapter")
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
-->

