TAchart, TbarSeries

Rund um die LCL und andere Komponenten
Antworten
Weatherman
Beiträge: 8
Registriert: So 25. Jan 2015, 18:11

TAchart, TbarSeries

Beitrag von Weatherman »

Hallo,

Die Funktion TBarSeries.GetYmin liefert bei mir immer Null wenn alle Y-Werte > 0 sind, ist mindestens ein Wert < 0, wird das korrekte Minimum ermittelt. Ist das gewollt, habe ich da irgendetwas nicht verstanden oder ist das ein Bug?

Gruß Weatherman

wp_xyz
Beiträge: 4869
Registriert: Fr 8. Apr 2011, 09:01

Re: TAchart, TbarSeries

Beitrag von wp_xyz »

Wahrscheinlich wird der Wert des ZeroLevel (da wo die Balken beginnen) mitberücksichtigt, und der ist 0. Um das "wahre" Datenminimum abzufragen, könntest du mal den Extent der Datenquelle abfragen: Die y-Grenzen sind BarSeries.Source.Extent.a.y (Minimum) und BarSeries.Source.Extent.b.y (Maximum). Wenn Balken gestackt sind, brauchst du stattdessen ExtentList.

Weatherman
Beiträge: 8
Registriert: So 25. Jan 2015, 18:11

Re: TAchart, TbarSeries

Beitrag von Weatherman »

Vielen Dank, damit erhalte ich das tatsächliche Datenminimum und kann relativ einfach die X-achse Richtung Y-Minimum verschieben.
Damit ist mein Problem gelöst.
Allerdings erscheint mir das oben beschriebene Verhalten der Funktion .GetYmin nicht so ganz logisch. Aber gut, so ist es eben.
Nochmals vielen Dank
Gruß Weatherman

wp_xyz
Beiträge: 4869
Registriert: Fr 8. Apr 2011, 09:01

Re: TAchart, TbarSeries

Beitrag von wp_xyz »

Weatherman hat geschrieben:Allerdings erscheint mir das oben beschriebene Verhalten der Funktion .GetYmin nicht so ganz logisch.

Das ist eine Eigenheit der BarSeries: Jeder Balken erstreckt sich vom ZeroLevel bis zum Datenpunkt. Da die automatische Achsenskalierung normalerweise immer so arbeiten muss, dass ganze Balken sichtbar sind, muss ZeroLevel mit in die Rechnung einbezogen werden. Klar, man hätte es auch anders machen können, aber so wird auch der Fall gestackter Balken automatisch mit abgedeckt.

Ähnlich verhält sich AreaSeries.

Antworten