Results 1 to 5 of 5

Thread: Hoe kan de X-as in TChart uitgezet worden tegen de wortel van de tijd.

  1. #1

    Thumbs up Hoe kan de X-as in TChart uitgezet worden tegen de wortel van de tijd.

    Ik ben bezig met het schrijven van een programma, waarbij testresultaten volgens verschillende methodes (Time Settlement, Taylor, ...) worden weergegeven in een chart (De standaard Steema TChart in Delphi).
    Time Settlement - De axial displacement (y-as) wordt uitgezet tegen de tijd in minuten (x-as).
    Taylor - De axial displacement (y-as) wordt uitgezet tegen de wortel van de tijd in minuten (x-as).

    Mijn vraag:

    Hoe krijg ik de wortel van de tijd uitgezet op de x-as.
    In plaats van 0, 1, 2, 3, 4, ... krijg je 0, 1, 4, 8, 16, ... , waarbij de stapgrootte tussen twee getallen gelijk blijft.

    Volgens mij moet dit met TChart kunnen, want deze kan ook de exponentiele functie en dergelijke aan.

    Kan iemand mij hier mee helpen?

    Met vriendelijke groet,
    Marco van Verseveld

  2. #2
    Heeft echt niemand een idee?
    Ik probeer op de site van Steema een vraag te stellen, maar dan moet ik een licentie hebben.
    Verder kan ik op internet niets vinden, dat mijn vraag beantwoord.

    Met vriendelijke groet,
    Marco van Verseveld

  3. #3
    Volgens mij wordt de schaal standaard automatisch gezet, maar dit kun je uitzetten. Had je deze documentatie al gevonden. http://wiki.teechart.net/index.php?title=VCLTutorial4

  4. #4
    Senior Member
    Join Date
    Aug 2004
    Location
    Rotterdam
    Posts
    151
    Misschien heb je hier nog iets aan.

    Bij het laden van je Series met Add(X, Y) moet je voor X de wortel van de tijd nemen ipv de tijd zelf.

    Vervolgens schrijf je een OnGetAxisLabel voor je TChart waarbij je de LabelText vervangt door het kwadraat van de X waarde die je hebt toegevoegd.
    Ik zet daar ook nog de LabelStyle, maar dat kun je ook standaard in het object zetten.

    Je stapgrootte op de X-as is dan gelijk maar je labels lopen kwadratisch op.

    Code:
    procedure TForm.ChartGetAxisLabel(Sender: TChartAxis;
      Series: TChartSeries; ValueIndex: Integer; var LabelText: string);
    begin
      if (Sender = Chart.Axes.Bottom) then
      begin
        Sender.LabelStyle := talText;
        if Assigned(Series) then
          LabelText := Format('%.1f', [Sqr(Series.XValue[ValueIndex])])
      end
    end;

  5. #5
    Allebei bedankt voor de reactie.

    Voor een behoorlijk groot component (TChart of TeeChart) met veel mogelijkheden, vind ik de handleiding goed maar veel te beknopt.
    Ik kan er ook maar weinig over terugvinden op het internet. De demo's die ik gevonden heb, zijn voorbeelden met weinig code en uitzonderingen!

    Het voorbeeld stukje code ga ik bekijken en uitproberen.
    Een reactie daarop van mij volgt nog.

    Met vriendelijke groet,
    Marco van Verseveld

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •