我用的是Teechart7,可在统计分析时饼图百分比之和却怎么也不不等于100%
随便的几行代码,一种是通过数据源如: MyChart.Serie[0].DataSource:=ADOQuery1;
另一种是直接加入如:Add( 100,'okye' )都行不通真是出鬼了。
在此谢过。
procedure TForm1.CheckBox3Click(Sender: TObject);
var sql :string;
begin
sql:='select 100 as ''date'' , ''ok'' as ''mc'' '
+' UNION select 400 as ''date'' , ''oko'' as ''mc'' ' ;
// +' UNION select 500 as ''date'' , ''okok'' as ''mc'' ';
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add(sql);
ADOQuery1.Open;
myChart.FreeAllSeries;
MyChart.Legend.Visible:=True;
MyChart.Legend.Left:=36;
MyChart.Legend.Top:=20;
MyChart.AddSeries( TPieSeries.Create( Self ));
// MyChart.Series[0].FillSampleValues;
MyChart.Series[0].Marks.Style:=smsPercentTotal;
MyChart.Series[0].Marks.Style:=smsLabelPercent; ///////////////////
MyChart.Series[0].DataSource:=ADOQuery1;
//新标题在下面 MyChart.Series[0].Title:=ADOTable2.FieldByName('Description').AsString;
MyChart.Series[0].XLabelsSource:=adoquery1.Fields[1].FieldName;
// MyChart.Series[0].XValues.ValueSource:=adoquery[0].Fields[0].FieldName;
MyChart.Series[0].yValues.ValueSource:=adoquery1.Fields[0].FieldName;
//////////////////////
// with MyChart.Series[0] do
// begin
// Add( 100,'okye' );
// Add( 400, 'Hello' );
// Add( 500, 'abc', clGreen );
// end;
end;
随便的几行代码,一种是通过数据源如: MyChart.Serie[0].DataSource:=ADOQuery1;
另一种是直接加入如:Add( 100,'okye' )都行不通真是出鬼了。
在此谢过。
procedure TForm1.CheckBox3Click(Sender: TObject);
var sql :string;
begin
sql:='select 100 as ''date'' , ''ok'' as ''mc'' '
+' UNION select 400 as ''date'' , ''oko'' as ''mc'' ' ;
// +' UNION select 500 as ''date'' , ''okok'' as ''mc'' ';
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add(sql);
ADOQuery1.Open;
myChart.FreeAllSeries;
MyChart.Legend.Visible:=True;
MyChart.Legend.Left:=36;
MyChart.Legend.Top:=20;
MyChart.AddSeries( TPieSeries.Create( Self ));
// MyChart.Series[0].FillSampleValues;
MyChart.Series[0].Marks.Style:=smsPercentTotal;
MyChart.Series[0].Marks.Style:=smsLabelPercent; ///////////////////
MyChart.Series[0].DataSource:=ADOQuery1;
//新标题在下面 MyChart.Series[0].Title:=ADOTable2.FieldByName('Description').AsString;
MyChart.Series[0].XLabelsSource:=adoquery1.Fields[1].FieldName;
// MyChart.Series[0].XValues.ValueSource:=adoquery[0].Fields[0].FieldName;
MyChart.Series[0].yValues.ValueSource:=adoquery1.Fields[0].FieldName;
//////////////////////
// with MyChart.Series[0] do
// begin
// Add( 100,'okye' );
// Add( 400, 'Hello' );
// Add( 500, 'abc', clGreen );
// end;
end;
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货