DBchartでX軸に文字列を利用したい


さといも  2005-11-02 04:00:26  No: 18392

DBchartを利用してグラフを作りたいと思います。
例えば、X軸に商品名、Y軸に売上個数としたいと思った場合、
DBには

商品名  売上個数
りんご  20
みかん  30

となっている場合にX軸に商品名を設定できませんでした。
なにか、方法があるのでしょうか?


大豆Z  2005-11-03 03:47:46  No: 18393

XLabelsSource := '商品名';

TChart コンポーネント  TChartAxis
のヘルプファイルくらいみましょう。

Delphi2005でしたら
「ホームページに書いてるとおり検索したんですが
  TChartのヘルプ
  どこにあるのでしょうか!!」
って
ボーランドに直接  聞いてみて。

(実はいれわすれなんだけどね・・・・・
  無視しているボーランドがどうかともってね。問いかけてみて)

無いっていってきたら古バージョンのDelphiのヘルプでいいから
のっている古いヘルプくれっていうといいね。
ごねるといいよ

BottomAxis.LabelsSeparation := 0;
で  ラベル間の計算がされなくなるから全部表示される。
しかし、重なるので汚くなります。
だから  270度回転させて、縦フォントにするといいかもかも。

サンプル:

procedure TForm1.FormCreate(Sender: TObject);
  var  ChSr: TChartSeries;
       DBChart :TDBChart;
begin
  DBChart := TDBChart.Create(self);
  DBChart.Parent := Self;
  DBChart.Align := alClient;
  DBChart.Legend.Visible := False;

  DataSource1.DataSet := Table1;
  Table1.DatabaseName := 'dbdemos';
  Table1.TableName  :=  'country.db';
  Table1.Open;

  ChSr := TBarSeries.Create(Self);; //TPointSeries.Create(Self);
  with ChSr do
  begin
    ParentChart := DBChart;
    DataSource := Table1;
      XLabelsSource := 'Name';
      YValues.ValueSource := 'Population' ;

      AddXY(25,777,'えへへ');
    with ParentChart do
    begin
      BottomAxis.LabelsSeparation := 0;
      BottomAxis.LabelsAngle := 270;
      BottomAxis.LabelsFont.Name := '@MS ゴシック';
    end;
  end;
end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  Table1.Close;
end;


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加