Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   TChart mit 2. Y-Achse (https://www.delphipraxis.net/217195-tchart-mit-2-y-achse.html)

TurboMagic 20. Mai 2025 08:23

TChart mit 2. Y-Achse
 
Hallo,

ich hätte gerne ein Bar Chart (TChart Standard) bei dem manche Balken
eine rechte statt einer linken Y-Achse mit anderer Skalierung benutzen.

Durch setzen der Series1.VertAxis := aBothVertAxis; bekomme ich die rechte
Y-Achse auch angezeigt und ich kann der auch ggf. neue Maximum Werte zuweisen,
der betreffende Balken benutzt die aber nicht.

dummzeuch 20. Mai 2025 08:31

AW: TChart mit 2. Y-Achse
 
Man muss die 2. Y-Achse als VertAxis für die Serien zuweisen, die sie benutzen sollen.

TurboMagic 20. Mai 2025 09:11

AW: TChart mit 2. Y-Achse
 
Zitat:

Zitat von dummzeuch (Beitrag 1548704)
Man muss die 2. Y-Achse als VertAxis für die Serien zuweisen, die sie benutzen sollen.

Danke für den Tipp, aber sollte nicht das hier:

Series1.VertAxis := aBothVertAxis

Wie von mir geschrieben das schon tun? Oder fehlt da noch was?

dummzeuch 20. Mai 2025 09:18

AW: TChart mit 2. Y-Achse
 
Also ist Series1 die Datenserie, die die 2. Y-Achse verwenden soll?
aBothVertAxis benutzt aber dann beide, nicht nur die rechte.

TurboMagic 20. Mai 2025 09:50

AW: TChart mit 2. Y-Achse
 
Hallo,

ja, das ist die Serie.
Also: ich möchte nur 1 Serie mit Balken haben von denen 90% die linke Achse benutzen,
10% von den Werten aber so hoch sind, dass die Linke Achse unnötig hoch skalieren würde.
Daher würde ich für diese 10% gerne eine rechte Achse haben wollen.

Einführen einer 2. Sere wäre glaube ich schlecht, da ich keine "Tiefe" im Diagramm haben will.

dummzeuch 20. Mai 2025 10:01

AW: TChart mit 2. Y-Achse
 
Zitat:

Zitat von TurboMagic (Beitrag 1548713)
Also: ich möchte nur 1 Serie mit Balken haben von denen 90% die linke Achse benutzen,
10% von den Werten aber so hoch sind, dass die Linke Achse unnötig hoch skalieren würde.
Daher würde ich für diese 10% gerne eine rechte Achse haben wollen.

Einführen einer 2. Sere wäre glaube ich schlecht, da ich keine "Tiefe" im Diagramm haben will.

Ah, jetzt ja.
Ich glaube das geht so nicht.
Du kannst die Y-Achse nur pro Serie zuweisen.
Abhilfe: Eine zweite Serie mit nur den "zu hohen" Werten, die die rechte Y-Achse verwendet, und diese "zu hohen" Werte dann in der 1. Serie auf ungültig setzen.

Ich muss zugeben, dass ich nicht weiß, ob das funktioniert. Balkengrafiken benutze ich nur sehr selten.

TurboMagic 20. Mai 2025 10:31

AW: TChart mit 2. Y-Achse
 
Hallo,

danke schon mal soweit.
Das Problem welches ich mit einer 2. Serie hätte ist, dass das bei Balkendiagrammen
vermutlich in die Tiefe geht, d.h. er spart in der 1. Serie nichts aus nur weil in der
2. dort was hin soll.

Man könnte vermutlich versuchen zu tricksen, so dass in der ersten Serie da ein leerer
Balken ohne X-Achsen Beschriftung ist, nur zeige ich die Werte auch auf dem Balken an,
was dann vermutlich zur Anzeige von 0 führt in dieser 1. Serie führt.

Ich bräuchte also ein Balkendiagramm mit mehreren Serien was nicht in die Tiefe geht.
Irgendwie etwas schwer vorstellbar...

dummzeuch 20. Mai 2025 12:38

AW: TChart mit 2. Y-Achse
 
Zitat:

Zitat von TurboMagic (Beitrag 1548723)
Man könnte vermutlich versuchen zu tricksen, so dass in der ersten Serie da ein leerer
Balken ohne X-Achsen Beschriftung ist, nur zeige ich die Werte auch auf dem Balken an,
was dann vermutlich zur Anzeige von 0 führt in dieser 1. Serie führt.

Es gibt auch "ungültige" Werte, die keinen Wert haben, der angezeigt werden könnte. Wenn ich mich recht erinnere, gibt es dafür in TeeChart eine Konstante.

TurboMagic 20. Mai 2025 14:32

AW: TChart mit 2. Y-Achse
 
Halo,

habe jetzt eine Lösung:

Eine 2. Bar-Series die als Y-Achse dhe rechte benutzt und
wenn das erste Mal ein Bar zu dieser hinzugefügt werden soll, werden soviele
leere Bars zu dieser hinzugefügt, wie es Bars in der ersten Serie gibt.
Erfordert halt, dass die Bars für die rechte Y-Achse immer nach denen für
die linke definiert werden müssen. Ist aber hier machbar.


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:01 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