StringGrid显示如下
序号 时间(m) 压力(MPa) 温度(℃)
1 0.00 0.000 15.2
2 0.07 0.000 15.3
3 0.17 0.000 15.4
4 0.24 0.000 15.5
5 0.33 0.000 15.6
6 0.40 0.000 15.7
7 0.51 0.000 15.7
8 0.56 0.000 15.8
9 0.68 0.000 15.9
10 0.75 0.000 16.0
11 0.83 0.000 16.1
12 0.95 0.000 16.2
13 1.02 0.000 16.3
14 1.12 0.000 16.4
15 1.22 0.000 16.5
16 1.30 0.000 16.5
17 1.36 0.000 16.6
18 1.47 0.000 16.7
19 1.54 0.000 16.8显示一个压力-时间-温度的图表
请问用什么控件 怎样搞??
3x!
序号 时间(m) 压力(MPa) 温度(℃)
1 0.00 0.000 15.2
2 0.07 0.000 15.3
3 0.17 0.000 15.4
4 0.24 0.000 15.5
5 0.33 0.000 15.6
6 0.40 0.000 15.7
7 0.51 0.000 15.7
8 0.56 0.000 15.8
9 0.68 0.000 15.9
10 0.75 0.000 16.0
11 0.83 0.000 16.1
12 0.95 0.000 16.2
13 1.02 0.000 16.3
14 1.12 0.000 16.4
15 1.22 0.000 16.5
16 1.30 0.000 16.5
17 1.36 0.000 16.6
18 1.47 0.000 16.7
19 1.54 0.000 16.8显示一个压力-时间-温度的图表
请问用什么控件 怎样搞??
3x!
Type
TXs=Record
A,B,C:Real;
end;
pXs=^AXs;
AXs=Array[0..1000] of TXs;
var
TmpP:Array [0..2] of TPoint;
A,B,C:real;
i,J,TmpY:integer;
JQXs:real;
Xs:pXs;
procedure GetXs(var a,b,c:real;P:Array of TPoint);
var iFz,iFm:real;
function Pf(n:integer):integer;
begin
Result:=n*n;
end;
begin
iFz:=(P[0].Y-P[2].Y)*(P[0].X-P[1].X)-(P[0].Y-P[1].Y)*(P[0].X-P[2].X);
iFm:=(Pf(P[0].X)-Pf(P[2].X))*(P[0].X-P[1].X)-(Pf(P[0].X)-Pf(P[1].X))*(P[0].X-P[2].X);
a:=iFz/iFm;
b:=((P[0].Y-P[1].Y)-(Pf(P[0].X)-Pf(P[1].X))*a)/(P[0].X-P[1].X);
c:=P[0].Y-a*Pf(P[0].X)-b*P[0].X;
end;
function GetYValue(A,B,C:real;X:integer):integer;
begin
Result:=Round(A*X*X+B*X+C);
end;
begin
For i:=0 to nCount-1 do
nCanvas.Ellipse(p[i].X-2,P[i].Y-2,P[i].X+2,p[i].Y+2);
GetMem(Xs,(nCount-2)*SizeOf(TXs));
For i:=0 to nCount-1-2 do
begin
MoveMemory(@TmpP[0],@P[i],3*SizeOf(TPoint));
GetXs(A,B,C,TmpP);
Xs^[i].A:=A;Xs^[i].B:=B;Xs^[i].C:=C;
end;nCanvas.MoveTo(P[0].X,P[0].Y);
For i:=0 to nCount-1-1 do
begin
JQXs:=0;
For J:=P[i].X to P[i+1].X do
begin
if (i=0) or (i=nCount-2) then
begin
if i=0 then
TmpY:=GetYValue(Xs[i].A,Xs[i].B,Xs[i].C,J)
else
TmpY:=GetYValue(Xs[i-1].A,Xs[i-1].B,Xs[i-1].C,J)
end
else
begin
TmpY:=Round(GetYValue(Xs[i-1].A,Xs[i-1].B,Xs[i-1].C,J)*(1-JQxs)+GetYValue(Xs[i].A,Xs[i].B,Xs[i].C,J)*JQXs);
JqXs:=JqXs+1/(P[i+1].X-P[i].X);
end;
nCanvas.LineTo(J,TmpY);end;
end;
FreeMem(Xs);
end;
向数据库的数据与图之间的关系!
DBStringGrid与DBChart 的联系的那种!