怎么画精确的坐标系

如何画精确的坐标系
已知四个角点,(x1,y1),(x2,y2),(x3,y3),(x4,y4)
根据这四个点的坐标自动调整坐标系的范围,并标上刻度,对刻度的要求是必须等距离增大或减小,如0.1   ,0.3   ,0.5...不能是0.41,0.32这样的数
这个坐标的问题我弄了几个月了,还是弄的一塌糊涂,高手指点一下吧。

------解决方案--------------------
Private Sub Command1_Click()
Xstart = Text3.Text 'text3是x轴的开始坐标
Xend = Text4.Text 'text4是x轴的末尾坐标
Ystart = Text2.Text 'text2是y轴的开始坐标
Yend = Text1.Text 'text1是y轴的末尾坐标
Picture1.Cls
Picture1.Font = "times new roman "
Picture1.FontItalic = True
Picture1.FontSize = 10
Picture1.Scale (-5 / 90 * (Xend - Xstart), Xend - Xstart)-(Xend - Xstart, -5 / 90 * (Xend - Xstart))
Picture1.Line (0, 0)-(Xend - Xstart, 0)
Picture1.Line ((Xend - Xstart) - 3 / 90 * (Xend - Xstart), 1.5 / 90 * (Xend - Xstart))-((Xend - Xstart), 0)
Picture1.Line ((Xend - Xstart) - 3 / 90 * (Xend - Xstart), -1.5 / 90 * (Xend - Xstart))-((Xend - Xstart), 0)
Picture1.CurrentX = (Xend - Xstart) - 5 / 90 * (Xend - Xstart)
Picture1.CurrentY = 11 / 90 * (Xend - Xstart)
Picture1.Print "x "
Picture1.Line (0, Xend - Xstart)-(0, 0)
Picture1.Line (1.2 / 90 * (Xend - Xstart), (Xend - Xstart) - 3 / 90 * (Xend - Xstart))-(0, (Xend - Xstart))
Picture1.Line (-1.2 / 90 * (Xend - Xstart), (Xend - Xstart) - 3 / 90 * (Xend - Xstart))-(0, (Xend - Xstart))
Picture1.CurrentX = 1 / 90 * (Xend - Xstart)
Picture1.CurrentY = (Xend - Xstart) - 2 / 90 * (Xend - Xstart)
Picture1.Print "y "
Picture1.CurrentX = -3 / 90 * (Xend - Xstart)
Picture1.CurrentY = 3 / 90 * (Xend - Xstart)
Picture1.Print "O "
'MsgBox x & DataLast
For i = 0 To 5
For j = 1 To col1
If List2.List(i) = Left(ExcelData(istart, j), 3) Then aa
Next j
Next i
End Sub

Function aa()
r = 255 * Rnd
g = 255 * Rnd
b = 255 * Rnd
For y = DataStart + Xstart To DataLast
Picture1.Line (y - DataStart - Xstart, (ExcelData(y, j) - Ystart) / (Yend - Ystart) * (Xend - Xstart))-(y - DataStart + 1 - Xstart, (ExcelData(y + 1, j) - Ystart) / (Yend - Ystart) * (Xend - Xstart)), RGB(r, g, b)
Next y
End Function