![]() |
[Frag] - TChart, wie mehrere Y-Achsen?
Hallo!
Ich habe eben schon mal gesucht, aber die Treffer helfen mir nicht weiter. Zum Problem, ich habe auf meiner Form ein TChart und würde jetzt gerne 4 Y-Achsen anzeigen. Jeweils 2 links und 2 rechts, mit verschiedenen Skalierungen. Ich habe schon CustomAxes angelegt, aber wie werden die denn angezeigt? |
Re: [Frag] - TChart, wie mehrere Y-Achsen?
Hallo Marc,
willst du wirklich mehrere Achsen permanent anzeigen, dann hilft dir vielleicht das Kapitel (5.4) "Arbeiten mit Achsen" aus der Online Hilfe zur TeeChart-Komponente. Mitunter kann es interessant sein, die passende Achse erst dann einzublenden, wenn eine bestimmte Serie markiert wurde. Grüße vom marabu |
Re: [Frag] - TChart, wie mehrere Y-Achsen?
Liste der Anhänge anzeigen (Anzahl: 2)
Hallo!
Es sollen 4 Kurven in einem Diagramm dargestellt werden. Die Kurven sind natürlich anwählbar. Mittlerweile habe ich es hinbekommen, dass ich 4 Achsen habe, allerdings nur zur Designzeit, in der Laufzeit werden komischerweise nur die linke und rechte Achse angezeigt, die beiden CustomAchsen werden dann nicht gezeigt. Die Kurven werden aber alle 4 gezeichnet. Die Onlinehilfe habe ich vorher versucht zu benutzen, allerdings wird die Hilfedatei nicht gefunden. Ich weiß auch noch nicht, wo ich die Datei herbekommen könnte. |
Re: [Frag] - TChart, wie mehrere Y-Achsen?
Würde mich interessieren ob du das mittlerweile hinbekommen hast.
Stehe vor dem gleichen Problem. |
Re: [Frag] - TChart, wie mehrere Y-Achsen?
Sorry war gestern bei einem Kunden in Frankreich, daher melde ich mich erst jetzt.
Ja, ich habe es hinbekommen. Du musst in der TChart-Komponente die Serien anlegen, die du brauchst. Wenn du mehr als 2 Achsen brauchst, dann musst du noch Custom-Achsen anlegen. Das geht im Fenster Struktur, da kannst du in der TChart CustomAxes hinzufügen. Dann kannst du den Serien Werte übergeben:
Delphi-Quellcode:
Oder du übergibst ein Array:
for i := scopeIndexSaved to scopeIndex - 2 do
begin Chart1.Series[0].AddY(scopePressure[I], '', clRed); Chart1.Series[1].AddY(scopeVelocity[I], '', clGreen); Chart1.Series[2].AddY(scopeTemperature[I], '', clYellow); Chart1.Series[3].AddY(scopePullerVelocity[I], '', clBlue); end;
Delphi-Quellcode:
Chart1.Series[0].AddY(scopePressure);
Chart1.Series[1].AddY(scopeVelocity); Chart1.Series[2].AddY(scopeTemperature); Chart1.Series[3].AddY(scopePullerVelocity); |
Re: [Frag] - TChart, wie mehrere Y-Achsen?
Guten tag,
ich bin ebenfalls auf der Suche nach einer Möglichkeit verschiedene Y-Achsen anzeigen zu lassen, die sich (wenn möglich) auch noch selbst skallieren. Ich werde aus der Anleitung hier leider nicht so schlau, benutze selbst Delphi 7 Proffessional und finde das angegebene Feld "Struktur" leider nicht :-( :gruebel: Wäre sehr Dankbar, wenn Ihr mir kurz helfen könntet, da ich die Lösung ziemlich schnell umsetzen muss :-( Vielen Dank im Vorraus lg Sascha |
Re: [Frag] - TChart, wie mehrere Y-Achsen?
Moin Sascha,
wenn du mehrere Y Achsen haben willst, dann musst du dich um einige Dinge selber kümmern. TChart hat die blöde Eigenschaft zwar mehrere Y Achsen zu unterstützen, aber die werden dann eher Stiefmütterlich behandelt. So machen Custom Axis z.B. kein Zoom direkt mit. Auch das Anpassen des Chart an die Breite der Y Achse geschieht nicht automatisch. Ich könnte heute Abend mal ne Demo raussuchen wie wir das in unserer Software gelöst haben. |
Re: [Frag] - TChart, wie mehrere Y-Achsen?
Das wäre ne super Sache,
so langsam würd ich nämlich ganz gern meinem Monitor ne Ecke rausbeißen um dann mit Hilfe der Tastatur ein bisschen Baseball spielen zu können ;) Vielen Dank moelski und schönen Abend noch lg Sascha |
Re: [Frag] - TChart, wie mehrere Y-Achsen?
Liste der Anhänge anzeigen (Anzahl: 1)
Moin !
So geht dem :-) |
Re: [Frag] - TChart, wie mehrere Y-Achsen?
Nabend,
Problem an der Sache wird sein, dass nicht jeder die TeeChart Komponenten besitzen wird :-D Ohne diese könnte man es auch noch so machen: ![]()
Delphi-Quellcode:
MfG McDoTprocedure TForm1.ButtonXClick(Sender: TObject); var TA : TChartAxis; begin TA:=TChartAxis.Create(Chart1); TA.Assign(Chart1.LeftAxis); TA.StartPosition := 0; TA.EndPosition := 100; TA.Horizontal := False; TA.Visible := True; //Die zweite Achse etwas weiter links positionieren TA.PositionPercent := -4; Series2.CustomVertAxis := Ta; Chart1.LeftAxis.EndPosition := 45; end; |
Re: [Frag] - TChart, wie mehrere Y-Achsen?
Hiho,
vielen Dank für das Beispiel, aber wie McDoT schon sagte, ist es mir leide rnicht möglich die Tee... Komps zu benutzen. trotzdem nocheinmal vielen Dank und nen schönen Tag noch ;) |
Re: [Frag] - TChart, wie mehrere Y-Achsen?
Moin !
Verstehe nicht ganz das Problem. Es ging doch um TChart und das ist auch als Standart Edition bei jedem Delphi dabei. Ok, der TeeCommander ist evtl nicht da, dann nimm den raus nach dem Öffnen und gut is. Es fehlt auch die Unit Math noch. Und es ist ein kleiner Bug drin mit Achsen[nr] ... Aber es sollte auch mehr das prinzip zeigen wie man Custom Axis automatisch platzieren lassen kann. |
Re: [Frag] - TChart, wie mehrere Y-Achsen?
Hat ja auch geholfen, das Prblem ist gelöst,
nu noch schnell den rest :coder: und fertig ;) Danke nochmal :dp: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:27 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