Code Gear VCL Beispiel
AuszeichnungenDownloadBestellen
Vorstellung 
Produkte 
Support 
Kontakt 

Rt-Plot 
Rt-Tools2D 
Kostenloses 

Page in English



 

 

 

 

Verwendung von Rt-Tools2D VCL anhand eines Beispiels

Die Aufgabe, einen zweidimensionalen Graphen zu erzeugen, kann anfangs kompliziert erscheinen, wenn Sie die Kartesianischen Graph-Komponenten und ihre zahlreichen Optionen sehen. Die Erstellung eines kleinen Beispiel-Programms wird Ihnen demonstrieren, dass das sehr einfach sein kann. Das Programm soll den Sinus und die Kosinus-Funktionen von 0-360 ° oder 0-2π anzeigen:
Zunächst betrachten wir die Daten die generiert werden müssen: Die X-Daten der Sinus und Kosinus Funktion können identisch gewählt werden. Die Funktionswerte (Y) sind jedoch unterschiedlich für die jeweiligen X.

Zunächst erstellen wir ein neues Projekt und platzieren drei   TRtDoubleVector Komponenten auf dem Formular. Im Object Inspector benennen wir diese in  AngleVector, SineVector and CosineVector um. Das Formular wird in "ExampleGraph" umbenannt und die Unit als “GraphExample” gespeichert. Das Projekt wird als "GraphTest" gespeichert.

Nun fügen wir eine TRtGraph2D Komponente hinzu und passen die Größe an. Beim erstellen der Grafik enthätt diese zwei Achsen: XAxis1 (mit Beschriftung X-Axis) und YAxis1 (mit Beschriftung Y-Axis)

Da wir andere Beschriftungen an den Achsen wünschen, wählen wir die untere Achse aus und ändern die Name Property auf AngleAxis und die Caption zu Angle/Radiant.
Analog wählen wir die linke Achse aus und setzen die Name Property auf FunctionAxis und die Caption auf Sine and Cosine.

Die zwei Kurven der Grafik werden durch hinzufügen von zwei  TRtPointSeries Komponenten repräsentiert. Wir setzen die Namen auf SinSeries und CosSeries und die Capition Eigenschaften auf Sine und Cosine.

Wir markieren beide Serien Komponenten. Im Objekt-Inspektor stellen wir die XData Eigenschaft auf AngleVector.

Wir markieren die SinSeries Komponente und stellen die YData Eigenschaft auf SineVector.

Analog wählen wir die CosSeries Komponente aus und stellen die YData Eigenschaft auf CosineVector. Da wir verschiedene Pukt-Symbole und Linien wünschen, setzen wir Line.Color auf Green und PointSymbol.FillColor auf Transparent.

 

Um die optimalen Einstellungen für die Punktsymbole und Linien zu finden werden für jede Serie Zufallswerte dargestellt. Die Grafik sollte nun ähnlich wie links aussehen.

Da bis jetzt noch keine Daten erzeugt wurden zeigt die Grafik noch keine Datenpunkte. Dies muss mittels Programmcode geschehen. In unserem Programm fügen wir eine TButton Komponente hinzu und setzen den OnClick Event auf:

    procedure TGraphExample.Button1Click(Sender: TObject);
    // adds sine and cosine function values every 10°
    var i, NextIdx: integer; AngleAsRad: Double;
    begin
      for i := 0 to 36 do
      begin
        // using NextIdx instead of i. Clicking twice will extend graph
        NextIdx := AngleVector.Count;
        AngleAsRad := DegToRad(NextIdx*10);
        AngleVector[NextIdx] := AngleAsRad;
        SineVector[NextIdx] := Sin(AngleAsRad);
        CosineVector[NextIdx] := Cos(AngleAsRad);
      end;
    end;

     

Wie zu sehen ist, können die Vektoren als Nullbasiertes Array of Double betrachtet werden. Man muss sich jedoch nicht um die benötigte Größe kümmern. Dies wird von der Komponente automatisch geregelt.
Wenn das Projekt kompiliert und gestartet wird, sollte die Bildschimausgabe dem linken Bild entsprechen.

Eine weitere Möglichkeit besteht darin auf die Daten als List of Double zuzugreifen. Dies wird hier in der Prozedur beschrieben, die wir einem zweiten Button zuweisen.

    procedure TGraphExample.Button2Click(Sender: TObject);
    // adds additional points 10° after the last
    var AngleAsRad: Double;
    begin
      AngleAsRad := DegToRad(AngleVector.Count*10);
      AngleVector.Add(AngleAsRad);
      SineVector.Add(Sin(AngleAsRad));
      CosineVector.Add(Cos(AngleAsRad));
    end;

     

Sie vermissen vielleicht eine Legende zu den Datensätzen wenn sehr viele Linien dargestellt werden. Nun, selektieren Sie die Grafik mit der Maus und fügen Sie einfach eine TRtLegend Komponente hinzu. Setzen Sie Position auf TopCenterOfGraph. Die Legende verbindet sich automatisch mit der Grafik Komponente und stellt alle Datensätze mit Linien, Punktsymbolen und Beschreibungen dar.

Wie zu sehen ist, benötigt man nur wenige Minuten ein voll funktionsfähiges Grafik Programm zu erstellen

Mehr Informationen im PDF-Manual(2.08MB).

Copyright © 2008 Horst Reichert all rights reserved
webmaster@rt-science.com