<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
>De Universiteit van Brits Columbia</holder>
</copyright>



</chapterinfo>
<title
>Handleiding voor &kst;</title>



<sect1 id="Welcome">
<title
>Welkom</title>
<para
>Welkom bij &kst;. Binnen enkele minuten bent u op weg de mooie eigenschappen van dit programma voor het plotten en manipuleren van gegevens te verkennen. Hier zijn slechts enkele van de taken die u kunt uitvoeren met &kst;: </para>

<itemizedlist>
<listitem>
<para
>Het snel plotten van meerdere grafieken tegelijk met gebruik van alleen de opdrachtregel. </para>
</listitem>
<listitem>
<para
>Het analyseren van gegevens met behulp van een uitgebreide verzameling van gereedschappen waaronder histogrammen, energiespectra, en zelf gemaakte vergelijkingen. </para>
</listitem>
<listitem>
<para
>Het zonder moeite in- en uitzoomen op interessante gebieden in een plot met gebruik van of de muis of het toetsenbord </para>
</listitem>
<listitem>
<para
>Het direct volgen van binnenkomende gegevens ("live streaming data") met gebruik van de mogelijkheden die &kst; heeft om die gegevens direct te plotten. </para>
</listitem>
</itemizedlist>
<para
>In deze handleiding worden de beginselen besproken van het installeren van, het uitvoeren van en het werken met &kst;. Het is gebaseerd op de Snelle Rondleiding in &kst; van Barth Netterfield. U kunt elk moment andere eigenschappen zelf onderzoeken. Alle eigenschappen worden in de rest van dit Handboek gedocumenteerd.</para>

</sect1>

<sect1 id="commandline">
<title
>Het starten van &kst; vanaf de opdrachtregel</title>
<para
>&kst; wordt veel gebruikt voor het snel vervaardigen, vanaf de opdrachtregel, van plots van gegevens. Voor het op deze manier vervaardigen van plots is haast geen kennis vereist van de grafische gebruikersinterface van &kst;, toch krijgt u zo onmiddellijk bruikbare resultaten. </para>

<para
>In deze handleiding wordt een demo-pakket van gegevensbestanden gebruikt die samen met &kst; wordt geïnstalleerd in <filename class="directory"
>$<envar
>KDEDIR</envar
>/share/apps/kst/tutorial</filename
>, waarin <filename class="directory"
>$<envar
>KDEDIR</envar
></filename
> de map is waarin &kde; op uw systeem is geïnstalleerd (u kunt deze vinden met de opdracht <command
>kde-config --prefix</command
>).</para>

<note
><para
>Als uw versie van &kst; ouder is dan 1.1.0 kunt u de gegevens die in deze handleiding worden gebruikt vinden op <ulink url="http://omega.astro.utoronto.ca/kst/tutorial/kst_tutorialdata.tgz"
>http://omega.astro.utoronto.ca/kst/tutorial/kst_tutorialdata.tgz</ulink
>. Haal deze op en pak dit pakket ("untar") uit, en ga naar de resulterende map: <screen
><userinput
><command
>tar -zxvf kst_tutorialdata.tgz</command>
<command
>cd kst_tutorialdata</command
></userinput
></screen>

</para>
</note>

<para
>Om een overzicht te krijgen van alle beschikbare opdrachten in &kst; type: <screen
><userinput
><command
>kst --help</command
></userinput
></screen>
</para>
<para
>U ziet dan een beschrijving van de syntaxis en een lijst van opdrachten, ongeveer als volgt (ik geef de beschrijvingen hier vertaald weer, vert.): <screen
>Gebruik: kst [Qt-opties] [KDE-opties] [opties] [Bestanden]

Kst: een programma voor het bekijken van gegevens.

Algemene opties:
  --help                    Toon help voor opties
  --help-qt                 Toon opties voor Qt
  --help-kde                Toon opties voor KDE
  --help-all                Toon alle opties
  --author                  Toon informatie over auteur
  -v, --version             Toon informatie over versie
  --license                 Toon informatie over licentie
  --                        Eind van opties

Opties:
  -F &lt;dataFile&gt;             Geef gegevensbestand op: gebruikt in plaats van een kst standaard bestand [|]
  -y &lt;Y&gt;                    Veld voor Y-as (meerdere toegestaan)
  --ye &lt;equation&gt;           Vergelijking voor Y-as (meerdere toegestaan)
  -e &lt;E&gt;                    Veld voor fouten in Y (meerdere toegestaan)
  -x &lt;X&gt;                    Veld of bereik voor X-as [INDEX]
  --xe &lt;X&gt;                  X-vector voor vergelijkingen x0:x1:n [INDEX]
  -p &lt;Y&gt;                    Veld voor energiespectrum (meerdere toegestaan)
  -h &lt;Y&gt;                    Veld voor histogram (meerdere toegestaan)
  -r &lt;f&gt;                    Bemonsteringsfrequentie voor energiespectrum [60.0]
  --ru &lt;U&gt;                  Eenheden psd bemonsteringsfrequentie [Hz]
  --yu &lt;U&gt;                  Eenheden voor y-vectoren [V]
  -l &lt;P&gt;                    Lengte van FFT's is 2^P [10]
  -f &lt;F0&gt;                   Eerste te lezen frame [-2]
  -n &lt;NS&gt;                   Aantal te lezen frames [-2]
  -s &lt;NS&gt;                   Aantal frames over te slaan bij elke keer lezen [-1]
  -a                        Pas boxcar-filter toe voor overslaan frames
  -m &lt;NC&gt;                   Scheid plots gerangschikt in &lt;NC&gt; kolommen
  -d                        Toon als punten in plaats van krommen
  -g                        Geef een legendavak
  --print &lt;file&gt;            Druk af in bestand en sluit af [&lt;geen&gt;]
  --png &lt;file&gt;              Sla op als png-bestand en sluit af [&lt;geen&gt;]

Argumenten:
  Bestanden                     Gegevensbestanden (als -y gegeven) of *.kst-bestand
</screen>
</para>

<para
>De voor &kst; specifieke opties worden opgesomd in de sectie <literal
>Options:</literal
>. Indien dit zo uitkomt worden de standaardwaarden weergegeven binnen vierkante haken achter de beschrijving van de opties&mdash;deze waarden zullen worden gebruikt voor alle niet gewijzigde opties. </para>

<para
>We nemen eerst even het ASCII-bestand <filename
>gyrodata.dat</filename
>, dat in het demo-pakket zit, in beschouwing. ASCII-bestanden behoren tot de vele bestandstypen die door &kst; kunnen worden gelezen. In ASCII-bestanden zijn de gegevens gerangschikt in kolommen, waarbij elke kolom met een veld overeenkomt, en de kolomnummers (beginnend met 1 van links naar rechts) de veldnamen vertegenwoordigen. In dit ASCII-bestand zijn 3 kolommen aanwezig, dus met de veldnamen 1, 2 en 3. Om een plot te maken van de eerste kolom typt u eenvoudig: <screen
><userinput
><command
>kst -y 1 gyrodata.dat</command
></userinput
></screen>

</para>
<para
>Alle gegevens in de eerste kolom worden nu geplot: </para>
<screenshot>
<mediaobject>
<imageobject>
<imagedata fileref="Screenshot-kst-tutorial-gyro1.png" format="PNG"/>
</imageobject>
</mediaobject>
</screenshot>
<para
>Merk op dat voor de X-as van de plot geen veld werd opgegeven, dus gebruikte &kst; hiervoor, zoals verwacht, de standaard INDEX-vector. De INDEX-vector is een speciale vector in &kst; die de gehele getallen bevat van 0 tot en met N-1, waarin N het aantal gegeven waarden is in de overeenkomende vector voor de Y-as. Sluit &kst; af met <guimenuitem
>Afsluiten</guimenuitem
> in het menu <guimenu
>Bestand</guimenu
>, of door <keycombo action="simul"
><keycap
>Ctrl</keycap
><keycap
>Q</keycap
></keycombo
> te typen. </para>

<para
><filename
>gyrodata.dat</filename
> bevat 20000 "frames" (in dit geval: regels met gegevens), dus misschien wilt u alleen maar een gedeelte ervan bekijken. Om slechts 10000 "frames" te plotten, vanaf "frame" 7000, typt u: <screen
><userinput
><command
>kst -y 1 -f 7000 -n 10000 gyrodata.dat</command
></userinput
></screen>

</para>

<para
>Een van de sterke punten van &kst; is de mogelijkheid om direct nieuwe gegevens te plotten als ze binnenkomen. Stelt u zich voor dat nieuwe gegevens voortdurend worden toegevoegd aan het einde van <filename
>gyrodata.dat</filename
>. In zo'n geval zou het nuttig kunnen zijn alleen de meest recente gegevens te kunnen plotten. Om alleen de laatste 10000 "frames" van <filename
>gyrodata.dat</filename
> te plotten voert u het volgende in: <screen
><userinput
><command
>kst -y 1 -n 10000 gyrodata.dat</command
></userinput
></screen>
</para>
<para
>Indien <filename
>gyrodata.dat</filename
> wordt bijgewerkt ("updated") zal de plot voortdurend alleen de laatste 10000 "frames" tonen. </para>

<para
>In plaats van het direct inlezen van een invoerbestand kan &kst; ook de ASCII-gegevens gebruiken afkomstig van stdin (het toetsenbord). Om stdin op te geven als een invoer geeft u eenvoudig <filename
>stdin</filename
> op als een van de bestandsnamen. U kunt hiervan op vele manieren gebruik maken, zoals het opnemen van &kst; op in een serie "pipes": <screen
><userinput
><command
>cat gyrodata.dat | awk '{print $1 + 2}' | kst -y 1 stdin</command
></userinput
></screen>
</para>
<para
>In de bovenstaande opdracht wordt de opdracht <command
>awk</command
> gebruikt om 2 op te tellen bij (elk getal in) kolom 1 van <filename
>gyrodata.dat</filename
> voordat het resultaat via de "pipe" wordt doorgegeven aan &kst;. </para>

<para
>Merk op dat bij de beschrijving van de <option
>y</option
>-optie staat dat deze optie meerdere keren mag worden gebruikt. Hierdoor is het snel plotten van meerdere krommen mogelijk, en zelfs van meer dan een plot.Om alle drie velden in <filename
>gyrodata.dat</filename
> te plotten in aparte plots voert u het volgende in: <screen
><userinput
><command
>kst -y 1 -y 2 -y 3 -m 1 gyrodata.dat</command
></userinput
></screen>

</para>
<para
>De optie <option
>m</option
> geeft aan dat verschillende plots moeten worden gemaakt, in plaats van een enkele plot, zoals hieronder is te zien: </para>
<screenshot>
<mediaobject>
<imageobject>
<imagedata fileref="Screenshot-kst-tutorial-gyro-multiple.png" format="PNG"/>
</imageobject>
</mediaobject>
</screenshot>

</sect1>

<sect1 id="datawizard-tour">
<title
>Een vlugge rondleiding in de Gegevensassistent</title>
<para
>Hoewel het werken met &kst; vanaf de opdrachtregel snel en gemakkelijk is kunnen er situaties zijn waarin het invoeren van gegevens eenvoudiger gaat met de grafische gebruikersinterface&mdash;bijvoorbeeld als u &kst; al heeft draaien met andere ingelezen gegevens. Het kan ook zijn dat u domweg liever de grafische interface gebruikt. Door vertrouwd te zijn met beide manieren van het invoeren van gegevens kunt u efficiënter omgaan met &kst;. </para>

<para
>Met de Gegevensassistent kunt u in &kst; snel en eenvoudig vectoren, krommen en plots maken van de gegevens in gegevensbestanden. Om de assistent te starten selecteert u <guimenuitem
>Gegevensassistent...</guimenuitem
> in het menu <guimenu
>Gegevens</guimenu
> of klikt u op de knop <inlinemediaobject
> <imageobject
> <imagedata fileref="Icon-kst-datawizard.png" format="PNG"/> </imageobject
> </inlinemediaobject
> in de taakbalk. U zult worden gevraagd een gegevensbron te selecteren. Blader naar het bestand <filename
>gyrodata.dat</filename
> dat in de voorbeelden met de opdrachtregel is gebruikt en klik op <guibutton
>Volgende</guibutton
>. U ziet dan het volgende venster: </para>

<screenshot>
<screeninfo
>Gegevensassistent Scherm 2</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="Screenshot-kst-datawizard2.png" format="PNG"/>
</imageobject>
<textobject>
<phrase
>Gegevensassistent Scherm 2</phrase>
</textobject>
</mediaobject>
</screenshot>

<para
>Links ziet u een lijst van de beschikbare velden in <filename
>gyrodata.dat</filename
>. U kunt in de lijst van gemarkeerde velden filteren door het invoeren van een passende karakterrij (inclusief jokertekens zoals <literal
>*</literal
>). Plaats vinkjes in de vakjes voor de velden <guilabel
>1</guilabel
>, <guilabel
>2</guilabel
> en <guilabel
>3</guilabel
>. </para>

<para
>De sectie <guilabel
>Gegevensbereik</guilabel
> wordt gebruikt om het bereik op te geven van de gegevens die moeten worden gelezen uit de geselecteerde vectoren van het invoerbestand. In de volgende bespreking wordt kennis verondersteld van het begrip <quote
>frames</quote
>. Om kort te gaan, een "frame" bestaat gewoon uit een aantal gegevensmonsters, en elk gegevensbestand bestaat uit een aantal "frames". Voor een gedetailleerde beschrijving zie <xref linkend="supportingadditionalfileformatsdatasourceconceptsframes"/>. </para>

<variablelist>
<varlistentry>
<term
><guilabel
>Beginframe</guilabel
>, <guilabel
>Tellen vanaf het einde</guilabel
>, <guilabel
>Aantal frames</guilabel
>, en <guilabel
>Lezen tot het einde</guilabel
> </term>
<listitem>
<para
>Met deze vier instellingen kunnen de onder- en bovengrenzen van het gegevensbereik worden ingesteld. Selecteer bijvoorbeeld <guilabel
>Tellen vanaf het einde</guilabel
> en voer 10 000 in voor het <guilabel
>Aantal frames</guilabel
> waardoor alleen de laatste 10 000 frames zullen worden gelezen. Indien <filename
>gyrodata.dat</filename
> voortdurend wordt bijgewerkt zullen steeds de aanvullingen tot het einde van het bestand worden gelezen. </para>

</listitem>
</varlistentry>

<varlistentry>
<term
><guilabel
>Lees 1 monster per N frames</guilabel
> en <guilabel
>Boxcar filter eerst</guilabel
> </term>
<listitem>
<para
>Behalve de onder- en bovengrens kan ook het aantal monsters dat in het opgegeven bereik moet worden gelezen worden ingesteld. Indien niet <guilabel
>Lees 1 monster per N frames</guilabel
> is geselecteerd (met N het ingevoerde aantal) worden alle monsters in dit bereik gelezen. En anders kunnen frames in het gegevensbestand worden overgeslagen door <guilabel
>Lees 1 monster per N frames</guilabel
> te selecteren. Voorlopig deselecteren we <guilabel
>Lees 1 monster per N frames</guilabel
>. </para>
</listitem>
</varlistentry>
</variablelist>

<para
>De instellingen voor het Energiespectrum en de X-as kunnen worden opgegeven in de sectie <guilabel
>Plottypes</guilabel
>. </para>

<variablelist>

<varlistentry>
<term
><guilabel
>XY</guilabel
>, <guilabel
>Energiespectrum</guilabel
>, en <guilabel
>XY en Energiespectrum</guilabel
> </term>
<listitem>
<para
>Selecteer <guilabel
>XY en Energiespectrum</guilabel
> voor zowel de plot van de gegevens zelf als die van het erbij behorende energiespectrum. Voor verdere informatie over de opties die beschikbaar zijn voor energiespectra zie <xref linkend="power-spectra"/>. </para>
</listitem>
</varlistentry>

<varlistentry>
<term>
<guilabel
>X-as vector</guilabel>
</term>
<listitem>
<para
>De vector die in de plots wordt gebruikt als de onafhankelijke vector (horizontale as). U kunt daarvoor een veld kiezen in uw gegevensbestand, of de INDEX-vector. Omdat er in <filename
>gyrodata.dat</filename
> geen X-as vector is laat u de keuze staan op INDEX. </para>
</listitem>
</varlistentry>

</variablelist>

<para
>De subsectie <guilabel
>FFT-opties</guilabel
> van de sectie <guilabel
>Plottypen</guilabel
> is alleen beschikbaar als er een energiespectrum moet worden geplot. In deze handleiding komen de details van energiespectra niet aan bod, dus gebruikt u in deze subsectie de standaard instellingen. </para>

<para
>Als u tevreden bent met alle instellingen klikt u op <guibutton
>Volgende</guibutton
> om verder te gaan naar het volgende venster. </para>

<screenshot>
<screeninfo
>Gegevensassistent Scherm 3</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="Screenshot-kst-datawizard3.png" format="PNG"/>
</imageobject>
<textobject>
<phrase
>Gegevensassistent Scherm 3</phrase>
</textobject>
</mediaobject>
</screenshot>

<para
>Hierin kunt u algemene plotinstellingen wijzigen. De meeste instellingen wijzen zich zelf. Selecteer <guilabel
>1 nieuwe plot per kromme</guilabel
> bij <guilabel
>Plaats van krommen</guilabel
> en <guilabel
>In nieuw venster</guilabel
> bij <guilabel
>Plaats van plots</guilabel
>. Hierdoor worden alle zes plots (drie krommen en drie energiespectra) in het zelfde venster geplaatst. </para>


<para
>Als u tevreden bent met alle instellingen klikt u op <guibutton
>Afsluiten</guibutton
> waarna de plots worden gegenereerd: </para>
<screenshot>
<screeninfo
>De gegenereerde plots</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="Screenshot-kst-tutorial-datawizard-done.png" format="PNG"/>
</imageobject>
<textobject>
<phrase
>De gegenereerde plots</phrase>
</textobject>
</mediaobject>
</screenshot>

<para
>Omdat het heel wat werk kostte deze plots te maken willen we de huidige &kst;-sessie opslaan (deze wordt in het volgende deel van deze handleiding gebruikt). Selecteer <guimenuitem
>Opslaan als...</guimenuitem
> in het <guimenu
>Bestand</guimenu
> en bewaar de sessie als <filename
>mijnkstsessie.kst</filename
>: </para>

<screenshot>
<screeninfo
>Opslaan van een KST-sessie</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="Screenshot-kst-filesave.png" format="PNG"/>
</imageobject>
<textobject>
<phrase
>Opslaan van een KST-sessie</phrase>
</textobject>
</mediaobject>
</screenshot>
<para
>Bij het opslaan van een &kst;-sessie worden alle plots, gegevensobjecten (die komen we later nog tegen) en indelingen opgeslagen die er zijn op het moment van opslaan. </para>
<para
>Als het bestand is opgeslagen kunt u &kst; verlaten. </para>
</sect1>

<sect1 id="mousezooming">
<title
>De beginselen van het bewerken van plots</title>
<para
>Nu dat u vertrouwd bent geraakt met het maken van plots in &kst; kunnen we enkele eigenschappen voor het bewerken van plots leren kennen die beschikbaar zijn in de grafische gebruikersinterface van &kst;. Start &kst; vanaf de opdrachtregel met het bestand <filename
>mijnkstsessie.kst</filename
> dat u eerder heeft opgeslagen: </para>
<screen
><userinput
><command
>kst mijnkstsessie.kst</command
></userinput
></screen>
<para
>Alle plots die u eerder heeft gemaakt zouden nu in &kst; ingelezen moeten zijn. Bekijk de plot met bij de y-as de tekst <literal
>PSD [V/Hz^{1/2}]</literal
>. Om de plot beter te kunnen bekijken rechtsklikt u er op en selecteert u <guimenuitem
>Maximaliseren</guimenuitem
> zoals u hieronder kunt zien: </para>
<screenshot>
<screeninfo
>Een plot maximaliseren</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="Screenshot-kst-zoom.png" format="PNG"/>
</imageobject>
<textobject>
<phrase
>Een plot maximaliseren</phrase>
</textobject>
</mediaobject>
</screenshot>

<para
>De plot is nu gemaximaliseerd in het huidige venster. Merk op dat aan de hoge kant van de x-as de grafiek bijna geheel vlak verloopt, zodat het nuttig zou zijn alleen dat gedeelte van de grafiek te bekijken dat interessant lijkt. Om dit te doen moet u er voor zorgen dat u in de XY muiszoommodus bent (selecteer <guimenuitem
>XY muiszoom</guimenuitem
> in het menu <guimenu
>Plots</guimenu
> of klik op <inlinemediaobject
><imageobject
><imagedata fileref="Icon-kst-xymousezoom.png" format="PNG"/></imageobject
></inlinemediaobject
>). Daarna trekt u eenvoudig een rechthoek rondom het gebied dat interessant lijkt. Merk op dat de coördinaten van de muisaanwijzer te zien zijn in de rechterbenedenhoek van het &kst;-venster (als dit niet het geval is zorgt u er voor dat <guimenuitem
>Statusbalk tonen </guimenuitem
> wordt aangevinkt in het menu <guimenu
>Instellingen</guimenu
>). </para>

<para
>De plotassen passen zich aan bij het <quote
>inzoomen</quote
> naar het het geselecteerde gebied in de plot. U merkt misschien op dat er een piek is aan de linkerkant van het energiespectrum die hoger is dan de bovengrens van de nieuwe y-as. Stel dat u de top van deze piek wilt zien. Rechtsklik op de plot en selecteer  <guimenuitem
>Naar boven</guimenuitem
> in het submenu <guimenu
>Rollen</guimenu
>. De plot moet nu naar boven rollen. Natuurlijk is het waarschijnlijk makkelijker om de sneltoets hiervoor te gebruiken, dit geldt voor de meeste van de zoom- en rolfuncties. In dit geval is de sneltoets de toets met het <keysym
>Pijltje naar boven</keysym
>. Om weer op elk gewenst moment terug te keren naar maximale zoom rechtsklikt u op de plot en selecteert u <guimenuitem
>Zoom Maximum</guimenuitem
> in het submenu <guisubmenu
>Zoom</guisubmenu
> (of u typt <keycap
>M</keycap
>, de sneltoets voor <guimenuitem
>Zoom Maximum</guimenuitem
>). </para>

<para
>Herstel de grootte van de plot van het energiespectrum door op de plot te rechtsklikken en  <guimenuitem
>Maximaliseren</guimenuitem
> ongedaan te maken. </para>

<para
>Kijk nu naar de plots waarin bij de y-assen <literal
>Column 2</literal
> en <literal
>Column 3</literal
> (kolom 2 en kolom 3) staat. Dit zijn plots van de bewegingen om twee loodrecht op elkaar staande assen van BOOMERANG tijdens de vlucht in 1998. Omdat deze plots met elkaar verband houden kan het nuttig zijn deze tegelijk te zoomen en te rollen. Klik op de vierkantjes in de rechter bovenhoeken van de beide plots. Die moeten nu donker kleuren om aan te geven dat de beide plots nu met elkaar gekoppeld zijn: </para>

<screenshot>
<screeninfo
>Gekoppeld zoomen</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="Screenshot-kst-tiedzoom.png" format="PNG"/>
</imageobject>
<textobject>
<phrase
>Gekoppeld zoomen</phrase>
</textobject>
</mediaobject>
</screenshot>
<para
>Voordat we proberen in te zoomen moeten we alle plots wissen behalve de twee waarmee we werken. Selecteer <guimenuitem
>Indelingsmodus</guimenuitem
> in het menu <guimenu
>Plots</guimenu
> of klik op de knop <inlinemediaobject
><imageobject
><imagedata fileref="Icon-kst-layoutmode.png" format="PNG"/></imageobject
></inlinemediaobject
> in de taakbalk. Voor elke plot behalve de twee die we willen behouden rechtsklikt u op de plot en selecteert u <guimenuitem
>Wissen</guimenuitem
>. Daarna rechtsklikt u ergens in het huidige venster en selecteert u <guimenuitem
>Basisindeling</guimenuitem
>. Nu moeten de beide plots de maximale ruimte delen binnen het venster. Keer teug naar de XY muiszoommodus als u klaar bent. </para>

<para
>Probeer nu in te zoomen in een of ander gedeelte van de bovenste plot. U zult merken dat de onderste plot leeg wordt. Dit komt omdat de plotassen in de onderste plot mee veranderd zijn in overeenstemming met die van de bovenste plotassen, en er geen gegevens voorkomen in dat speciale gebied van de onderste plot. Type <keycap
>M</keycap
> met de muiscursor boven een der beide plots om terug te keren naar maximum zoom in beide plots. Houd nu de <keycap
>Ctrl</keycap
>-toets in gedrukt (dit is gelijk aan het selecteren van <guimenu
>X-muiszoommodus</guimenu
> in het menu <guimenu
>Plots</guimenu
> of het klikken op de knop <inlinemediaobject
><imageobject
><imagedata fileref="Icon-kst-xmousezoom.png" format="PNG"/></imageobject
></inlinemediaobject
> in de taakbalk). Hierdoor verandert de vorm van de muisaanwijzer als controle. Met ingedrukte <keycap
>Ctrl</keycap
>-toets trekt u een rechthoek in de bovenste plot. Merk op dat de hoogte van de gestippelde rechthoek begrensd wordt zodat alleen in de x-richting kan worden gezoomd. Nu ziet u in beide plots gegevens als erop wordt ingezoomd, omdat de y-as in beide plots nu niet is veranderd. </para>
<tip>
<para
>U kunt snel alle plots in het venster met elkaar koppelen of ontkoppelen door <guimenuitem
>Gekoppeld zoom</guimenuitem
> te selecteren in het menu <guimenu
>Plots</guimenu
> of door te klikken op de knop <inlinemediaobject
><imageobject
><imagedata fileref="Icon-kst-tiedzoom.png" format="PNG"/></imageobject
></inlinemediaobject
> in de taakbalk. </para>
</tip>
<para
>Wanneer u klaar bent met het uitproberen van de zoom-eigenschappen kunt u &kst; afsluiten. U hoeft de plots nu niet op te slaan (maar het mag natuurlijk wel). </para>

</sect1>



<sect1 id="overviewdataobjects">
<title
>Een kort overzicht van Gegevensobjecten</title>
<para
>Met &kst; kan men meer doen dan alleen maar gegevens plotten en bekijken. Met de Gegevensassistent zag u al dat u met &kst; aan de hand van gegevens energiespectra kunt maken. In feite kan men met &kst; ook andere gegevensobjecten maken zoals histogrammen, vergelijkingen en "plugins". Een hulpprogramma met de naam Gegevensbeheer kan u helpen om alle gegevensobjecten die u maakt op een rijtje te zetten. </para>

<para
>Start &kst; met het bestand <filename
>demo.kst</filename
> dat in het demopakket aanwezig is: </para>
<screen
><userinput
><command
>kst demo.kst</command
></userinput
></screen>
<screenshot>
<screeninfo
>Kst met demo.kst</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="Screenshot-kst-demo.png" format="PNG"/>
</imageobject>
<textobject>
<phrase
>Kst met demo.kst</phrase>
</textobject>
</mediaobject>
</screenshot>
<para
>In deze sessie met &kst; zijn vectoren en andere gegevensobjecten die gemaakt zijn met de gegevens in <filename
>gyrodata.dat</filename
> aanwezig (van de vlucht van de ballon voor grote hoogte Boomerang in 1998). De bovenste plot bevat de azimutgegevens in rood, de middelste de gegevens van de bewegingen om een van de dwarsscheepse assen ("pitch") in blauw, en de onderste plot toont hiervan het energiespectrum in blauw. Laat ons eerst de plots nader bekijken. Koppel de bovenste twee plots met de techniek die u in de vorige sectie heeft leren kennen. Houd daarna de <keycap
>Ctrl</keycap
>-toets ingedrukt om in de X-muiszoommodus te komen. Zoom nu in op een klein gebiedje in de bovenste plot (laten we zeggen van 50000 tot 53000), waardoor in beide plots wordt ingezoomd. U zult dan merken dat de "pitch"-kromme negatief is gecorreleerd met de rode van het azimut. Dit komt doordat de "pitch gyro" een klein beetje gedraaid was ten opzichte van de azimutale as (over -0,69 graden). De werkelijke "pitch" <literal
>p'</literal
> is: <informalequation
> <mediaobject
> <imageobject
> <imagedata fileref="Equation-kst-correctedpitch.png" format="PNG"/> </imageobject
> </mediaobject
> </informalequation
> waarin <literal
>p</literal
> de originele "pitch" is, <inlinemediaobject
><imageobject
><imagedata fileref="Symbol-kst-theta.png" format="PNG"/></imageobject
></inlinemediaobject
> de rotatie is van de "pitch gyro" ten opzichte van de azimutale as, en <literal
>a</literal
> de gyro is van het azimut. <literal
>p'</literal
> wordt geplot als de zwarte kromme in de middelste plot. Het energiespectrum van <literal
>p'</literal
> is de zwarte kromme in de onderste plot. </para>

<para
>Laat ons nu eens bekijken hoe deze drie plots werden gemaakt. Om de Gegevensbeheerder te openen selecteert u <guimenuitem
>Gegevensbeheerder...</guimenuitem
> in het menu <guimenu
>Gegevens</guimenu
>, of klikt u op de knop <inlinemediaobject
><imageobject
><imagedata fileref="Icon-kst-datamanager.png" format="PNG"/></imageobject
></inlinemediaobject
> in de taakbalk: </para>
<screenshot>
<screeninfo
>De Gegevensbeheerder</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="Screenshot-kst-datamanager.png" format="PNG"/>
</imageobject>
<textobject>
<phrase
>De Gegevensbeheerder</phrase>
</textobject>
</mediaobject>
</screenshot>

<para
>In de Gegevensbeheerder is de volledige lijst aanwezig van de gegevensobjecten in de huidige &kst;-sessie. U kunt hier gegevensobjecten aanpassen of nieuwe gegevensobjecten maken. Zoals u ziet zijn er zes krommen (elk gemaakt van een tweetal vectoren), een vergelijking, twee energiespectra en vier gegevensvectoren in de lijst. Rechtsklik op C2-GY_PITCH en selecteer <guimenuitem
>W1-P1</guimenuitem
> in het submenu <guisubmenu
>Verwijderen uit plot</guisubmenu
>. Hierdoor wordt de kromme uit plot P1 in het venster W1 verwijderd. Verwijder ook op dezelfde manier C-PSD2-V3-GY_PITCH uit plot P3 in venster W1. Nu moeten alleen de gecorrigeerde krommen te zien zijn in de plots: </para>

<screenshot>
<screeninfo
>Alleen de gecorrigeerde krommen</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="Screenshot-kst-democorrected.png" format="PNG"/>
</imageobject>
<textobject>
<phrase
>Alleen de gecorrigeerde krommen</phrase>
</textobject>
</mediaobject>
</screenshot>

<para
>Om te zien hoe de gecorrigeerde "pitch gyro" werd gemaakt, markeert u C4-cleaned_pitch en klikt u op de knop <guibutton
>Bewerken</guibutton
>. U moet nu de dialoog Vergelijking bewerken zien: </para>
<screenshot>
<screeninfo
>Vergelijking bewerken</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="Screenshot-kst-editequation.png" format="PNG"/>
</imageobject>
<textobject>
<phrase
>Vergelijking bewerken</phrase>
</textobject>
</mediaobject>
</screenshot>

<para
>Merk op dat de vergelijking die werd gebruikt om <literal
>p'</literal
> te berekenen is ingevoerd in het tekstvak <guilabel
>Vergelijking</guilabel
> (<literal
>cos(-0,69)</literal
> (graden) is hier benaderd door 1). Experimenteer gerust met de instellingen in deze dialoog. Klik op <guibutton
>OK</guibutton
> (om wijzigingen op te slaan) of klik op <guibutton
>Annuleren</guibutton
> wanneer u klaar bent. </para>

<para
>Merk op dat bij alle gegevensobjecten een getal staat in de kolom <guilabel
># Gebruikt</guilabel
>. Dit getal is het aantal keren dat het gegevensobject wordt gebruikt door andere gegevensobjecten of in plots. Omdat we een kromme en een energiespectrum hebben verwijderd moet er in deze kolom bij ten minste twee gegevensobjecten een 0 staan. Klik op <guibutton
>Opruimen</guibutton
> om alle ongebruikte gegevensobjecten permanent te verwijderen. </para>

<para
>Klik op <guibutton
>Sluiten</guibutton
> om de Gegevensbeheerder af te sluiten. U kunt als u dit wenst nu &kst; afsluiten. </para>
</sect1>

<sect1 id="pluginsandevents">
<title
>Een beschouwing van Plugins en Gebeurtenissen</title>
<para
>We sluiten onze reis door &kst; af met het beschouwen van twee specifieke gegevenstypen&mdash;plugins en gebeurtenismonitoren. </para>

<para
>Een plugin is een flexibel gegevensobject waarvan het gedrag geheel afhangt van het geselecteerde plugin-bestand. Het plugin-bestand kan deel uitmaken van het standaard &kst;-pakket, of het kan worden geleverd door derden. U vindt instructies hoe u zelf een plugin-bestand kunt schrijven en compileren in <xref linkend="creatingplugins"/>.. Met behulp van plugins kan &kst; welke bewerking dan ook uitvoeren op een verzameling van gegevens, omdat de enige eis waaraan een plugin-bestand moet voldoen is dat die als invoer heeft een verzameling van invoervectoren en -scalairen, en als uitvoer een verzameling van vectoren en scalairen. </para>

<para
>Als voorbeeld zullen we trachten een rechte lijn aan te passen aan een kleine verzameling van gegevenspunten. Start &kst; met een plot van het eerste veld van het gegevensbestand <filename
>maxima.dat</filename
> dat is opgenomen in het demo-pakket: </para>

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

<para
>Met de optie <option
>d</option
> geeft u op dat alleen punten zullen worden geplot, en niet de verbindingslijntjes er tussen. U moet nu de plot van de gegevenspunten zien: </para>
<screenshot>
<screeninfo
>Plot van gegevenspunten</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="Screenshot-kst-maxima-datapoints.png" format="PNG"/>
</imageobject>
<textobject>
<phrase
>Plot van gegevenspunten</phrase>
</textobject>
</mediaobject>
</screenshot>
<para
>Open nu de Gegevensbeheerder. Klik op <guibutton
>Plugin...</guibutton
> in de sectie <guilabel
>Nieuw</guilabel
> om een nieuw Pluginobject te maken. Onder <guilabel
>Pluginselectie</guilabel
> selecteert u de plugin <guimenuitem
>Lineaire aanpassing</guimenuitem
>. Deze plugin heeft twee invoervectoren nodig&mdash;een met de x-waarden en een met de y-waarden van de gegevenspunten. Selecteer <guimenuitem
>INDEX</guimenuitem
> voor de <guilabel
>Invoervector - X-rij</guilabel
>, en <guimenuitem
>1</guimenuitem
> voor de <guilabel
>Invoervector - Y-rij</guilabel
>. Klik daarna op <guibutton
>OK</guibutton
>. U zult merken dat de nieuwe plugin hulpvectoren heeft gemaakt om daarin de uitvoervectoren op te slaan. Klik op <guibutton
>Kromme...</guibutton
> om een nieuwe kromme (is hier dus een rechte lijn) te maken voor de uitvoervectoren. Selecteer <guimenuitem
>V1-INDEX</guimenuitem
> voor de <guilabel
>X-as vector</guilabel
> en <guimenuitem
>P1-kstfit_linear_unweighted-Y Fitted</guimenuitem
> (P1-kstaanpassing_lineair_ongewogen-Y-aangepast) voor de <guilabel
>Y-as vector</guilabel
>. We willen de kromme bovenop de gegevenspunten plaatsen in de bestaande plot, dus in <guilabel
>Plaats van kromme</guilabel
> kiezen we <guilabel
>Plaatsen in bestaande plot</guilabel
> en deselecteren we <guilabel
>Plaatsen in nieuwe plot</guilabel
>. Tenslotte klikken we op <guibutton
>OK</guibutton
> om de nieuwe kromme te maken. Sluit de gegevensbeheerder om de aangepaste rechte lijn te bekijken: </para>

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

<para
>Op de zelfde manier als zojuist kunt u de uitvoer van elk type pluginobject maken en plotten. Er bestaat echter een kortere manier voor het maken van pluginobjecten voor aanpassen. Na rechtsklikken op een plot ziet u een contextmenu met daarin het submenu <guisubmenu
>Aanpassen...</guisubmenu
>. Selecteren van een kromme in het submenu geeft u de dialoog Functie aanpassen waarin de x- en y-vectoren reeds zijn geselecteerd. Nadat de plugin voor het aanpassen is geselecteerd wordt na het klikken op <guibutton
>OK</guibutton
> het pluginobject gemaakt, de kromme wordt gemaakt van de uitvoervectoren van de plugin en de kromme wordt geplaatst bovenop de bestaande plot. </para>

<para
>We bekijken nu gebeurtenissen. Gebeurtenisobjecten monitoren (volgen) gewoonlijk andere vectoren en scalairen en verrichten vastgestelde acties wanneer bepaalde condities met betrekking tot die vectoren of scalairen zich voordoen (waar worden). Klik op <guibutton
>Gebeurtenismonitor...</guibutton
> in de sectie <guilabel
>Nieuw</guilabel
> van de Gegevensbeheerder om een nieuwe gebeurtenis te maken: </para>
<screenshot>
<screeninfo
>Gebeurtenismonitor</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="Screenshot-kst-eventmonitor.png" format="PNG"/>
</imageobject>
<textobject>
<phrase
>Gebeurtenismonitor</phrase>
</textobject>
</mediaobject>
</screenshot>

<!-- FIXME: This seems to be incorrect: the equation given doesn't work -->
<para
>Veronderstel dat de gegevens van de "pitch gyro" voortdurend worden ververst, en dat we willen worden gewaarschuwd zodra de gecorrigeerde "pitch gyro" buiten het interval <literal
>[-0,60, -0,40]</literal
> komt. Om de gebeurtenis op deze manier in te stellen typt u het volgende in het tekstvak van <guilabel
>Expressie</guilabel
>: </para>

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

<para
>Merk op dat hierin elke expressie alleen een boolese expressie kan zijn (d.w.z. een expressie die alleen waar of onwaar als uitkomst kan hebben). In dit geval zal de expressie waar zijn wanneer een der beide ongelijkheden waar is. Selecteer zowel <guilabel
>Log als</guilabel
> en <guilabel
>Bericht aan</guilabel
>, en voer uw e-mailadres in rechts van het aankruisvakje van <guilabel
>Bericht aan</guilabel
>. Klik op <guibutton
>OK</guibutton
>, waarna de gebeurtenis wordt gemaakt. </para>

<para
>Selecteer nu <guimenuitem
>Kst debuggen...</guimenuitem
> in het menu <guimenu
>Help</guimenu
>. Klik op het tabblad <guilabel
>Log</guilabel
> om de log te bekijken voor "debug". Als de gebeurtenis goed is ingesteld zouden hierin waarschuwingen moeten staan met de x-waarden waarvoor deze gebeurtenis geactiveerd werd. Controleer dat deze waarden ruwweg overeenkomen met de waarden die u verwacht aan de hand van de plot: </para>

<screenshot>
<screeninfo
>Debug log</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="Screenshot-kst-debuglog.png" format="PNG"/>
</imageobject>
<textobject>
<phrase
>Debug log</phrase>
</textobject>
</mediaobject>
</screenshot>

<para
>Als de gegevens voor de "pitch gyro" steeds zouden worden bijgehouden zodra zij zich voordoen behoort de gebeurtenismonitor ook geactiveerd worden als dat zo uitkomt met de nieuwe gegevens. </para>

<para
>Als u klaar bent kunt u &kst; afsluiten. </para>
</sect1>


<sect1 id="conclusion">
<title
>Slotopmerking</title>

<para
>Hiermee is een einde gekomen aan de handleiding voor &kst;. Hopelijk heeft u voldoende kennis verworven om vertrouwd te zijn geworden met &kst;. Houd er wel rekening mee dat in deze handleiding niet alle mogelijkheden van &kst; aan bod zijn gekomen&mdash;er is nog veel meer om te onderzoeken en om mee te experimenteren. De rest van dit Handboek is een diepergaande gids voor concepten die variëren van de beginselen van het indelen van vensters tot het zelf maken van plugins en leesprogramma's voor gegevensbronnen. U wordt aangemoedigd &kst; op interessante en vernieuwende manieren te gebruiken&mdash;u zult waarschijnlijk ondervinden dat het programma niet alleen aan uw eisen en wensen tegemoet komt, maar dat u er zelfs meer mee kunt doen. </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:
-->

