![]() |
Fläche auf TChart einfärben
Hoi zusammen,
muss euch mal wieder nerven...;) Und zwar habe ich folgendes Problem: Ich möchte die Fläche unter einer Kurve im TChart einfärben. Die Fläche berechne ich auch - und zwar über das Trapez zwischen zwei Punkten auf der x-Achse und den jeweiligen Funktionswerten. Es liegt nahe, das berechnete Trapez dann auch gleich einzufärben. Dazu möchte ich die Canvas-Eigenschaft des Charts nutzen. Allerdings muss ich ja die exakten Koordinaten der Punkte ermitteln. Und genau daran scheitere ich gerade: Wie kann ich denn die Koordinaten des Punktes im Canvas ermitteln? Und noch eine weitere Frage: Die eingefärbte Fläche behält ihre Position (beim Zoomen oder verschieben) relativ zur Series dann schon bei und bleibt nicht statisch auf dem selben Fleck stehen, oder? Beste Grüße, Sven Edith meint: Gerade noch einen anderen Ansatz entdeckt... Man könnte ja auch noch über den Graphen einen Flächengraphen einzeichnen. Das Problem hierbei: Die Fläche zieht sich nach unten ja bis ins "Unendliche"...D.h. ich müsste für die Series einen "Nullwert" angeben können....Geht sowas denn? |
Re: Fläche auf TChart einfärben
Ich glaube das ging ganz einfach mit einer Methode von TChartSeries
Delphi-Quellcode:
Als AValueList gibst du die Werteliste deiner Chart Series an
procedure ColorRange(AValueList: TChartValueList;Const FromValue, ToValue: Double; AColor: TColor);
und From und To ist der Bereich von X0 bis Xn. |
Re: Fläche auf TChart einfärben
Besten Dank für deinen Beitrag. Die Funktion hatte ich wohl vorher einfach überlesen... :gruebel:
Noch macht sie aber auch noch nicht, was ich will - nämlich gar nichts...:(
Delphi-Quellcode:
Series1.ColorRange(Series1.YValues, 0, Series1.Count-1, clred);
|
Re: Fläche auf TChart einfärben
Delphi-Quellcode:
btw.
Series1.ColorRange(Series1.YValues, 0, Series1.MaxYValue, clred);
Wieso benutzt du nicht TAreaSeries, das kann das Verhalten, was von dir gewünscht wird? Bei TLineSeries müsste man rumtricksen. Ich glaube nämlich das CoolorRange nur die Linie selber eingefärbt hat, bin mir aber nicht sicher, schon lange her. |
Re: Fläche auf TChart einfärben
Liste der Anhänge anzeigen (Anzahl: 1)
TAreaSeries kann prizipiell schon das, was ich will...Allerdings füllt die Komponente ja den Bereich bis zum unteren Diagrammende auf. Und das will ich ja eben nicht.;)
Ich möchte, dass ein bestimmter Bereich unter einem Graphen markiert wird. In dem Beispiel im Anhang also nur bis y:=0...;) So früh am Morgen noch 'n bisschen vergesslich...Jetzt ist der Anhang auch da... |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:23 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz