![]() |
TChart Darstellung von Labels in X-Achse
Hallo,
ich habe ein Balkendiagramm bei dem ich in der X-Achse mittels der Labels Eigenschaft
Delphi-Quellcode:
für jeden Balken einen eigenen Namen vergebe.
chart1.series[i].Add(Array, Label);
Nun ist es aber so, dass wenn zuviele Balken in einem Diagramm sind, bzw. die Labels zu lang, dann werden einige einfach nicht dargestellt. Umgehen kann man das mit
Delphi-Quellcode:
Ist allerdings nicht sehr leserlich, deshalb würde ich die Beschriftung gerne nur vertikal machen, wenn sonst Labels nicht dargestellt werden.
TChart.Axes.Bottom.LabelsAngle := 90;
Die eigentliche Frage also: Wie kann ich zur Laufzeit erfragen ob einzelne Labels versteckt werden? Oder bleibt nur die Möglichkeit das selbst zu berechnen und dann "vermuten" ? |
AW: TChart Darstellung von Labels in X-Achse
Liste der Anhänge anzeigen (Anzahl: 2)
Gute Frage. Ich wüsste auch nicht wie. Hast du ein laufendes Abo und kannst die Frage direkt im Steema-Forum stellen? Wenn nicht kann ich das auch tun :-)
Ich hätte nur zwei, drei dumme Ideen:
|
AW: TChart Darstellung von Labels in X-Achse
Hallo Günther,
das sind schonmal wertvolle Tipps. Mir war bis dato gar nicht klar dass die Legende auch die Werte anzeigen kann :roll: Mit Style auf Mark auf Seperation auf 0% wird auch alles angezeigt. Und bei einem Winkel von 45° gäbe es auch keine Überschneidungen, bloss berechnet TChart die notwendigen Abstände nicht mehr richtig. Die Labels fangen unten in einem nicht sichtbaren Bereich an und überlappen dann in die X-Achsen-Beschriftung und sogar ins Diagramm hinein. Mit TChart.Panel.Margin kann man den unteren Bereich zwar manuell vergrößern, dass die Labels im sichtbaren Bereich anfangen, dennoch überblenden sie den X-Achsen-Titel. (Und die Legende überblenden sie auch wenn diese unten angeordnet ist, wie in meinem Fall) Nein bei Steema habe ich kein laufendes Abo. Wenn du dort direkt die Frage stellen könntest wär das natürlich toll. |
AW: TChart Darstellung von Labels in X-Achse
Die Frage lautet doch auch: Wenn so viele Balken mit Beschriftungen sichtbar sind, ist da nicht etwas faul bezüglich der Übersichtlichkeit?
Nicht umsonst fässt ist die 80/20 Regel verbreitet (Pareto) oder auch 'Top 10'. Im Prinzip ist es so, das man nur die wichtigsten Elemente anzeigt und den Rest unter 'Sonstiges' zusammenfässt. Die 'Sonstigen' kann man auch in einem zweiten Chart noch einmal detailliert anzeigen. Das geht natürlich nicht immer, z.B. wenn man die Umsätze aller 78 Warengruppen anzeigen will und die halbwegs gleichverteilt sind. Auf der anderen Seite: Wer wird eigentlich schlau aus einem Chart mit 78 Balken? Hier gilt es, zu gruppieren (stacked bars z.B.) oder Gruppensummen zu zeigen und dann für die einzelnen Gruppen jeweils einzelne Charts. Ich habe z.B. bei einer Fehleranalyse im Prinzip das gleiche Problem. Ich überlasse es hier aber dem Kunden, einzelne Fehler auszublenden und nur die Top X (X frei wählbar) anzuzeigen, wobei der Rest dann unter 'Other' fällt. Das geht natürlich nicht immer: Bei einer ABC-Analyse von Fehlerhäufigketen habe ich jedoch ein ähnliches Problem. Dort ist jeder Balken waagerecht angeordnet, und seine Fehlerbeschreibung steht links davon. Nur diese Beschreibung ist ein halber Roman à la 'Sensorschlonztrommel A/B12-XY 15 verwurbelt nicht mit Verwutzung 42,13. Der Chybichevabstand beträgt nicht 0.56 frmzl.'. Die Analyse ist schon auf die Top 8 beschränkt bzw. bis 80% erreicht ist, was 3-6 Fehlern entspricht. Trotzdem fehlen manchmal die mehrzeiligen Beschriftungen. Wenn ich die Achse dagegen verschiebe, passt alles rauf. Abhilfe (ohne Scheiß): Den Chart dehnen, bis alles raufpasst. Manuell. Der Anwender ist ja nicht doof. Wenn das bei Dir aber nicht der Fall ist, und Du einfach zu viel Informationen anzeigst, würde ich hier ansetzen: Das ist einfach nicht übersichtlich und verständlich. PS: Das Steema-Forum ist nicht alles. Es gibt auch noch Stackoverflow. |
AW: TChart Darstellung von Labels in X-Achse
Um nochmal auf die konkrete Frage zurückzukommen: Die Eigenschaft
Delphi-Quellcode:
einer Achse sagt dir, wieviele Label sichtbar sind. Das war zu einfach :roll:
Items.Count
Yeray hat nochmal ein ![]() |
AW: TChart Darstellung von Labels in X-Achse
:shock: Das ist zu einfach. Das *kann* einfach nicht die Lösung sein. :thumb:
Wenn ich mir überlege, wie lange ich an meiner ABC-Geschichte rumgedoktort habe und wie sehr mich das genervt hat. :wall: |
AW: TChart Darstellung von Labels in X-Achse
*Pfh* Komponentenhersteller, die mitdenken... wo bleibt denn da die Herausforderung? :roll:
|
AW: TChart Darstellung von Labels in X-Achse
Das ist bei Steema nicht normal. Deren Komponenten ist auch vom Quelltext her ziemlich chaotisch. Da kommt man im Leben nicht drauf, das die mitdenken. Aber gut. Spanier halt. Irgendwie dann doch sehr breitbandig. Zwischen Kreisklasse und weltmeisterlich.
|
AW: TChart Darstellung von Labels in X-Achse
Zitat:
Und danke für die Antwort. |
AW: TChart Darstellung von Labels in X-Achse
Naja, also ich bin auch nicht drauf gekommen und habe deshalb bei Steema nachgefragt...
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:44 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