Chart1.AddSeries(TBarSeries.Create(owner));
Chart1.Series[0].clear;
Chart1.Series[0].add(0,'数据1',clred);
Chart1.Series[0].add(3.9,'数据1',clGreen);
Chart1.Series[0].add(4.8,数据1',clBlue);

解决方案 »

  1.   

    ---------------------------
    Debugger Exception Notification
    ---------------------------
    Project main.exe raised exception class EListError with message 'List index out of bounds (2)'. Process stopped. Use Step or Run to continue.
    ---------------------------
    OK   Help   
    ---------------------------
    如上报错
      

  2.   

    这是我的程序,自己看看吧,每时间帮你搞了,希望对你有帮助
    procedure TfrmCharPrjAsset.CreateChart(Title : string;GPAsset,ZQAsset,HGAsset,Cash:Extended);
    var
      CharPrjAsset : TChart;
      series : TPieSeries ;
    begin
      
      CharPrjAsset := TChart.Create(Application);
      Series := TPieSeries.Create(Application);
      try
        CharPrjAsset.Parent := pnlChars;
        CharPrjAsset.Name := 'char'+ Title;
        CharPrjAsset.Title.Font.Size := 16;
        CharPrjAsset.Title.Text.Text   := Title;
        CharPrjAsset.OnDBlClick  := pnlChars.OnClick ;
        CharPrjAsset.BevelInner := bvRaised;
        CharPrjAsset.BevelOuter := bvLowered;
        CharPrjAsset.Legend.TextStyle := ltsRightValue;
        CharPrjAsset.Legend.Alignment := labottom ;
        CharPrjAsset.Legend.ShadowSize := 0;
        CharPrjAsset.Legend.ColorWidth := 5;
        CharPrjAsset.Legend.Font.Size := 8 ;
        CharPrjAsset.Left:= CharPrjAsset.Parent.ClientRect.Left+1 ;
        CharPrjAsset.Top := CharPrjAsset.Parent.ClientRect.Top-1;
        series.Name := 'series'+ Title;
        series.Circled := true;
        series.ParentChart := CharPrjAsset;
        series.Marks.ArrowLength := 1;
        series.Marks.Style := smsPercent;
        if (GPAsset+ZQAsset+HGAsset+Cash)=0 then
          begin
         // messagedlg('组合'+Title+'资产为零!这可能是个新组合.',mtwarning,[ mbOK ],0);
          series.AddPie(GPAsset,'股票资产',clWhite);
          series.AddPie(ZQAsset,'债券资产',clWhite);
          series.AddPie(HGAsset,'回购资产',clWhite);
          series.AddPie(Cash,'现金',clWhite);
          end
        else
          begin
          series.AddPie(GPAsset,'股票资产',clRed);
          series.AddPie(ZQAsset,'债券资产',clYellow);
          series.AddPie(HGAsset,'回购资产',clBlue);
          series.AddPie(Cash,'现金',clGreen);
          end;
      except
        on E:exception do
          begin
          CharPrjAsset.Free;
          series.Free;
          end;
      end;
    end;
      

  3.   

    这是我的程序,自己看看吧,每时间帮你搞了,希望对你有帮助
    procedure TfrmCharPrjAsset.CreateChart(Title : string;GPAsset,ZQAsset,HGAsset,Cash:Extended);
    var
      CharPrjAsset : TChart;
      series : TPieSeries ;
    begin
      
      CharPrjAsset := TChart.Create(Application);
      Series := TPieSeries.Create(Application);
      try
        CharPrjAsset.Parent := pnlChars;
        CharPrjAsset.Name := 'char'+ Title;
        CharPrjAsset.Title.Font.Size := 16;
        CharPrjAsset.Title.Text.Text   := Title;
        CharPrjAsset.OnDBlClick  := pnlChars.OnClick ;
        CharPrjAsset.BevelInner := bvRaised;
        CharPrjAsset.BevelOuter := bvLowered;
        CharPrjAsset.Legend.TextStyle := ltsRightValue;
        CharPrjAsset.Legend.Alignment := labottom ;
        CharPrjAsset.Legend.ShadowSize := 0;
        CharPrjAsset.Legend.ColorWidth := 5;
        CharPrjAsset.Legend.Font.Size := 8 ;
        CharPrjAsset.Left:= CharPrjAsset.Parent.ClientRect.Left+1 ;
        CharPrjAsset.Top := CharPrjAsset.Parent.ClientRect.Top-1;
        series.Name := 'series'+ Title;
        series.Circled := true;
        series.ParentChart := CharPrjAsset;
        series.Marks.ArrowLength := 1;
        series.Marks.Style := smsPercent;
        if (GPAsset+ZQAsset+HGAsset+Cash)=0 then
          begin
         // messagedlg('组合'+Title+'资产为零!这可能是个新组合.',mtwarning,[ mbOK ],0);
          series.AddPie(GPAsset,'股票资产',clWhite);
          series.AddPie(ZQAsset,'债券资产',clWhite);
          series.AddPie(HGAsset,'回购资产',clWhite);
          series.AddPie(Cash,'现金',clWhite);
          end
        else
          begin
          series.AddPie(GPAsset,'股票资产',clRed);
          series.AddPie(ZQAsset,'债券资产',clYellow);
          series.AddPie(HGAsset,'回购资产',clBlue);
          series.AddPie(Cash,'现金',clGreen);
          end;
      except
        on E:exception do
          begin
          CharPrjAsset.Free;
          series.Free;
          end;
      end;
    end;
      

  4.   

    这是我的程序,自己看看吧,每时间帮你搞了,希望对你有帮助
    procedure TfrmCharPrjAsset.CreateChart(Title : string;GPAsset,ZQAsset,HGAsset,Cash:Extended);
    var
      CharPrjAsset : TChart;
      series : TPieSeries ;
    begin
      
      CharPrjAsset := TChart.Create(Application);
      Series := TPieSeries.Create(Application);
      try
        CharPrjAsset.Parent := pnlChars;
        CharPrjAsset.Name := 'char'+ Title;
        CharPrjAsset.Title.Font.Size := 16;
        CharPrjAsset.Title.Text.Text   := Title;
        CharPrjAsset.OnDBlClick  := pnlChars.OnClick ;
        CharPrjAsset.BevelInner := bvRaised;
        CharPrjAsset.BevelOuter := bvLowered;
        CharPrjAsset.Legend.TextStyle := ltsRightValue;
        CharPrjAsset.Legend.Alignment := labottom ;
        CharPrjAsset.Legend.ShadowSize := 0;
        CharPrjAsset.Legend.ColorWidth := 5;
        CharPrjAsset.Legend.Font.Size := 8 ;
        CharPrjAsset.Left:= CharPrjAsset.Parent.ClientRect.Left+1 ;
        CharPrjAsset.Top := CharPrjAsset.Parent.ClientRect.Top-1;
        series.Name := 'series'+ Title;
        series.Circled := true;
        series.ParentChart := CharPrjAsset;
        series.Marks.ArrowLength := 1;
        series.Marks.Style := smsPercent;
        if (GPAsset+ZQAsset+HGAsset+Cash)=0 then
          begin
         // messagedlg('组合'+Title+'资产为零!这可能是个新组合.',mtwarning,[ mbOK ],0);
          series.AddPie(GPAsset,'股票资产',clWhite);
          series.AddPie(ZQAsset,'债券资产',clWhite);
          series.AddPie(HGAsset,'回购资产',clWhite);
          series.AddPie(Cash,'现金',clWhite);
          end
        else
          begin
          series.AddPie(GPAsset,'股票资产',clRed);
          series.AddPie(ZQAsset,'债券资产',clYellow);
          series.AddPie(HGAsset,'回购资产',clBlue);
          series.AddPie(Cash,'现金',clGreen);
          end;
      except
        on E:exception do
          begin
          CharPrjAsset.Free;
          series.Free;
          end;
      end;
    end;
      

  5.   

    Chart1.AddSeries(TBarSeries.Create(owner));中的 TBarSeries 在什么单元中呢,
    因为我不是在TCHART所在的单元调用,而是在别的地方的一个过程里,
    所以需要调用,
    否则出错为,[Error] com_unit.pas(218): Undeclared identifier: 'TBarSeries'
      

  6.   

    你去看DELPHI\demos\有个很好的例子,什么都有
      

  7.   

    delphi\demos\有很好的例子,好好看看吧,解决容易。
      

  8.   


    在 Series 定义的。