Beschriftung ChartSeries fehlt

Rund um die LCL und andere Komponenten
Antworten
erik
Beiträge: 11
Registriert: Di 18. Okt 2011, 18:11

Beschriftung ChartSeries fehlt

Beitrag von erik »

Hallo,

ich habe ein Problem ;)

Ich habe ein Chart erstellt und eine Barseries eingefügt (chart2barseries1.Add(wert,'Beschreibung die angezeigt werden soll',clred); ) allerdrings wird die Beschreibung nicht angezeigt, in den Demos wird immer ein der Text in einer gelben Box über dem Balken angezeigt, bei mir erscheint die nicht, habe auch keine Einstellung dafür gefunden :( noch besser wäre es, wenn ich den Text unter dem Balken an der x-Achse antragen könnte, wo sonst sie Skalierung steht, geht das irgendwie? Habe es über Marks probiert, aber ohne Erfolg.
In manchen Threads ist auch die Rede von einer TBarChart, welche über BarChart1.Bars.Items[0].SName angesprochen werden kann, die Komponente gibt es jedoch bei mir auch nicht, ist das ein zusätzliches Paket oder wurde die durch TChart ersetzt?

Vielen Dank für Eure Hilfe

erik

ps. habe die 0.9.30

Bauer321
Beiträge: 465
Registriert: Sa 21. Aug 2010, 21:30
OS, Lazarus, FPC: Windows 7 Ultimate (L 1.2.2 FPC 2.6.4 32-bit)
CPU-Target: 64-Bit
Wohnort: nahe Bremen
Kontaktdaten:

Re: Beschriftung ChartSeries fehlt

Beitrag von Bauer321 »

Also ich kann dir da erstmal nicht weiterhelfen jedoch gibts die TBarChart im Tab Misc
www.mcpatcher.net | www.hoeper.me

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

Re: Beschriftung ChartSeries fehlt

Beitrag von wp_xyz »

TAChart benutzt viel die ChartSources. Und damit funktioniert's auch: Setze eine ChartListSource auf dein Formular und verbinde sie mit dem Chart über dessen Property Source. Setze auch die Source Eigenschaft der BottomAxis auf diese ListSource. BottomAxis.Marks.Style musst du noch auf smsLabel setzen. Dann sollte es funktionieren.

erik
Beiträge: 11
Registriert: Di 18. Okt 2011, 18:11

Re: Beschriftung ChartSeries fehlt

Beitrag von erik »

super, danke
habe die series source auf die listsource gesetzt und dann zeigt es mir die werte auf der x-achse an :)

hätte da noch eine andere frage:

kann man die skalierung der y-achsen beeinflussen?
ich habe 3 barseries, die erste geht in positive y-richung im bereich von 0-1
die anderen beiden in negative y-richtung im bereich von 0-(-3)
ich habe zwei axistransformations eingefügt um die werte getrennt auf der rechten und linken seite anzeigen zu können, funktioniert auch soweit
das problem ist, dass ich es nicht schaffe, den bereich unterschiedlich zu skalieren, ich hätte gern den positiven bereich größer dargestellt, da die angezeigten werte auch bei 0,1 liegen können und durch die dynamische darstellung dann nicht mehr erkennbar sind
super wäre es, wenn das chart die 0-achse in der mitte hätte, der obere bereich in 0,1er schritten skaliert wäre, mit y-max= größter angezeigte wert und der untere bereich in 0,5er schritten y-min=niedrigster wert, ist das möglich?
Dateianhänge
chart.jpg

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

Re: Beschriftung ChartSeries fehlt

Beitrag von wp_xyz »

Das ist etwas trickreich. Vielleicht hilft dir das beigefügte Mini-Projekt. Die Lage des Nullpunkts und die Skalierung der beiden Achsen wird mit den Parametern Offset und Scale der LinearAxisTransforms festgelegt - da musst du etwas spielen. Zusätzlich kannst du den Range jeder Achse noch so festnageln, dass das Minimum und Maximum auf den gewünschten Werten liegen. Außerdem habe ich noch mit dem Range der Marks die Achsenbeschriftung in dem nicht benötigten Bereich ausgeschaltet.

P.S. Ich verwende die aktuelle Snapshot-Version von Lazarus - ich denke aber, dass die Demo auch mit der offiziellen Version laufen sollte.
Dateianhänge
BarSeries.zip
(2.9 KiB) 70-mal heruntergeladen

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

Re: Beschriftung ChartSeries fehlt

Beitrag von wp_xyz »

Ach ja: Fall du lieber eine einzige Achse willst, gibt es im Demo-Verzeichnis von TAChart ein Beispiel wie man lokal die Achse verzerren kann (axistransf, Seite "User defined").

erik
Beiträge: 11
Registriert: Di 18. Okt 2011, 18:11

Re: Beschriftung ChartSeries fehlt

Beitrag von erik »

vielen dank :) hab alles so hinbekommen, wie ich es wollte

die 0.9.31 hat dafür noch paar mehr nützliche funktionen

Antworten