А что сложного?
Запрашиваем у пользователя интервал построения и шаг построения, потом пишем нечто в роде
C:TCanvas;
//оси координат
C.MoveTo(0,C.Height div 2);
C.LineTo(C.Width,C.Height div 2);//OX
C.MoveTo(C.Width div 2,0);
C.LineTo(C.Width div 2,C.Height);//OY
x:=a;//левая граница
C.MoveTo(Trunc(x),Trunc(F(x)));//начальная позиция
while x<=b{правая граница}do
begin
C.LineTo(Trunc(x),Trunc(F(x)));
x:=x+h;//h-шаг
end;