AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Säulendiagramm

Ein Thema von S20000 · begonnen am 10. Jul 2008 · letzter Beitrag vom 16. Jul 2008
Antwort Antwort
Seite 2 von 3     12 3      
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#11

Re: Säulendiagramm

  Alt 10. Jul 2008, 14:17
Wenn du deiner Chart-Komponente mehrere Balken-Serien hinzufügst, dann musst du deren Eigenschaft MultiBar auf mbNone setzen, damit du die gewünschte Darstellung erhältst.

Im Chart-Editor wechsle von Diagramm auf Reihen und betrachte die RadioGroup "Mehrfach-Balken".
  Mit Zitat antworten Zitat
S20000

Registriert seit: 22. Apr 2008
84 Beiträge
 
#12

Re: Säulendiagramm

  Alt 10. Jul 2008, 14:38
Danke, der Tip war gut!

Jetzt bleibt nur noch ein Problem. Wie kann ich jetzt die "Y-Achse"
beschriften so das ich wie auf dem Bild zu sehen 3 Beschriftungen habe.
(siehe erster Beitrag)

Gruß
Sebastian
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#13

Re: Säulendiagramm

  Alt 10. Jul 2008, 15:19
Die Y-Achse ist die am linken Rand (Chart.VertAxis). Bei dir hat sie ein Increment (Steigung) von 5 und wahrscheinlich sogar eine automatische Skalierung.

Was genau willst du verändern?
  Mit Zitat antworten Zitat
S20000

Registriert seit: 22. Apr 2008
84 Beiträge
 
#14

Re: Säulendiagramm

  Alt 10. Jul 2008, 15:27
Hallo,

ich habe mal ein Bild zur Verdeutlichung eingefügt.
Oben der derzeitige Zustand, unten so wie
ich es benötige. Ich brauche im Prinzip eine
zusätzliche Achseninformation.

Gruß
Sebastian
Miniaturansicht angehängter Grafiken
2_772.jpg  
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#15

Re: Säulendiagramm

  Alt 10. Jul 2008, 16:07
Du könntest die Achsenbeschriftung für die DepthAxis auf Text umstellen und in der Methode OnGetAxisLabel den gewünschten String übergeben.
  Mit Zitat antworten Zitat
S20000

Registriert seit: 22. Apr 2008
84 Beiträge
 
#16

Re: Säulendiagramm

  Alt 10. Jul 2008, 20:31
Hallo,
könntest du das noch etwas konkretisieren?

chart1.DepthAxis. ? : = ?
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#17

Re: Säulendiagramm

  Alt 10. Jul 2008, 21:40
Klar.

Du setzt DepthAxis.LabelStyle auf talText und stellst einen event handler für OnGetAxisLabel bereit:

Delphi-Quellcode:
procedure TDemoForm.DemoChartGetAxisLabel(Sender: TChartAxis;
  Series: TChartSeries; ValueIndex: Integer; var LabelText: String);
begin
  if Sender = TChartAxis(DemoChart.DepthAxis) then
    case ValueIndex of
      0: LabelText := 'Serie 1';
      1: LabelText := 'Serie 2';
      2: LabelText := 'Serie 3';
    else LabelText := '???';
    end;
end;
  Mit Zitat antworten Zitat
S20000

Registriert seit: 22. Apr 2008
84 Beiträge
 
#18

Re: Säulendiagramm

  Alt 10. Jul 2008, 22:24
Vielen Dank schonmal!
Habe das jetzt wie folgt programmiert:

Delphi-Quellcode:
implementation

{$R *.dfm}

procedure TForm14.Chart1GetAxisLabel(Sender: TChartAxis; Series: TChartSeries;
  ValueIndex: Integer; var LabelText: string);
begin
  if Sender = TChartAxis(Chart1.DepthAxis) then
    case ValueIndex of
      0: LabelText := 'Serie 1';
      1: LabelText := 'Serie 2';
      2: LabelText := 'Serie 3';
    else LabelText := '???';
    end;
end;

procedure TForm14.FormCreate(Sender: TObject);
begin
chart1.DepthAxis.LabelStyle:=taltext;
chart1.Series[0].Add(10,'1',clred);
chart1.Series[1].Add(20,'2',clblue);
chart1.Series[2].Add(20,'3',clgreen);

end;
Die Ausgabe sieht dann aus wie im BIld zu sehen. Also ohne
die gewünschten Beschriftungen.
Habe ich etwas vergessen?
Miniaturansicht angehängter Grafiken
3_189.jpg  
  Mit Zitat antworten Zitat
S20000

Registriert seit: 22. Apr 2008
84 Beiträge
 
#19

Re: Säulendiagramm

  Alt 11. Jul 2008, 08:58
Guten Morgen,

ok es hat jetzt funktioniert. Ich hatte vergessen die
Depth Axis auf sichtbar zu schalten.

Gruß
Sebastian
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#20

Re: Säulendiagramm

  Alt 11. Jul 2008, 09:00
Moin,

du hast die Achsenbeschriftung noch nicht sichtbar gemacht:

Delphi-Quellcode:
procedure TForm14.FormCreate(Sender: TObject);
begin
  with Chart1 do
  begin
    DepthAxis.LabelStyle := talText; // besser im Chart-Editor
    DepthAxis.Visible := True; // besser im Chart-Editor
    Series[0].Add(10, '1', clred);
    Series[1].Add(20, '2', clblue);
    Series[2].Add(20, '3', clgreen);
  end;
end;
Bei deinem Beispiel wird deutlich, dass die kleinen Werte im Hintergrund mit der orthogonalen Darstellung schlecht sichtbar sind. Im Chart-Editor kannst du auf der 3D-Seite des Diagramms diese Eigenschaft abschalten und mit den Reglern für Drehung und Erhöhung spielen.

Wenn du mal nicht weißt, wie du eine Einstellung im Chart-Editor auch in deinem Code vornehmen kannst oder wenn dich die Intuition mal verlässt: Alle Änderungen gegenüber den Standardeinstellungen werden im Object Inspector durch BoldText hervorgehoben. Zusätzlich kannst du einen charakteristischen Zahlenwert im Chart-Editor einstellen und diesen in der Textdarstellung deiner Form suchen.

Freundliche Grüße
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 3     12 3      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:46 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz