我在*.txt的文件里有两行数据。
格式为:
  时间   气压
20010101,995.2
20010102,996.3
20010103,1002.2
  ...
  ...
20030101, 899.2
  ...
  ...如何做成一个有坐标图线!
最好有示例代码!多谢各位大侠!!

解决方案 »

  1.   

    可以用ado当成表读取后,然后使用mschart控件
      

  2.   

    Public Function Read_Text_File() As ADODB.Recordset      Dim rs As ADODB.Recordset
          Set rs = New ADODB.Recordset
          Dim conn As ADODB.Connection
          Set conn = New ADODB.Connection
          conn.Open "DRIVER={Microsoft Text Driver (*.txt; *.csv)};" & _
                      "DBQ=" & App.Path & ";", "", ""      rs.Open "select * from [test#txt]", conn, adOpenStatic, _
                      adLockReadOnly, adCmdText
          Set Read_Text_File = rs
          Set rs = Nothing
          Set conn = Nothing
    End FunctionPrivate Sub cmdReadTXT_Click()
          Set dgData.DataSource = obj.Read_Text_File
          Set obj = Nothing
    End Sub
      

  3.   

    MSChart控件应该可以达到你的要求。
    新建工程,选择"vb 企业版控件",然后在工具栏可以发现该控件。
      

  4.   

    写了一段
    引用
    microsoft activex data object 2.6 library
    添加控件microsoft chart control 6.0
    Option Explicit
    Function Read_Text_File() As ADODB.Recordset
          Dim rs As ADODB.Recordset
          Set rs = New ADODB.Recordset
          Dim conn As ADODB.Connection
          Set conn = New ADODB.Connection
          conn.Open "DRIVER={Microsoft Text Driver (*.txt; *.csv)};" & _
                      "DBQ=" & App.Path & ";", "", ""      rs.Open "select * from [test#txt]", conn, adOpenStatic, _
                      adLockReadOnly, adCmdText
          Set Read_Text_File = rs
          Set rs = Nothing
          Set conn = Nothing
    End FunctionPrivate Sub Command1_Click()
    Dim Values() As Variant
    Dim NumPoints As Integer
    Dim i As IntegerDim rs As ADODB.Recordset
    Set rs = New ADODB.Recordset
    Set rs = Read_Text_File()
    'Set MSChart1.DataSource = rs    '或者直接帮丁
    NumPoints = rs.RecordCount
    ReDim Values(1 To NumPoints, 1 To 2)    ' 加载数据
        rs.MoveFirst
        For i = 1 To NumPoints
            Values(i, 1) = CStr(rs!时间)
            Values(i, 2) = CStr(rs!气压)
            rs.MoveNext
        Next i
        rs.Close
        
        MSChart1.ChartData = Values
        
    End Sub
      

  5.   

    online(龙卷风V2.0--再战江湖) :
    多谢你的回帖,可如何把上面的代码和数据文件连结起来呀?  我很菜呀!!!
      

  6.   

    把这个保存成test.txt文件,放在同一目录下即可
    时间,气压
    2001,995.2
    2002,996.3
    2003,1002.2
    2004,899.2
    2005,995.2
    2006,996.3
    2007,1002.2
    2008,899.2
      

  7.   

    Picture1.ScaleMode = 3
    'Picture1.ScaleLeft = Picture1.ScaleLeft + Picture1.ScaleWidth / 2
    'Picture1.ScaleTop = Picture1.ScaleTop + Picture1.ScaleHeight / 2
    Picture1.Scale (0, 300)-(300, -50)
    'MsgBox Str(Picture1.ScaleLeft) + "--" + Str(Picture1.ScaleTop)
    Picture1.Line (0, 0)-(0, 300), vbRed
    Picture1.Line (0, 0)-(400, 0), vbRed
    Picture1.Line (constA1 * tDB(1).preP, constA2 * tDB(1).liqQ)-(constA1 * tDB(2).preP, constA2 * tDB(2).liqQ)
    For j = 3 To 17
    Picture1.Line -(constA1 * tDB(j).preP, constA2 * tDB(j).liqQ)
    Next j
    For j = 1 To 17
    Picture1.Print "Q-P线"
    Picture1.CurrentY = -10
    Picture1.CurrentX = constA1 * tDB(j).preP
    Picture1.Print tDB(j).preP
    Next j
    For j = 1 To 17
    Picture1.Circle (constA1 * tDB(j).preP, constA2 * tDB(j).liqQ), Radius, vbRed
    Next j
      

  8.   

    online(龙卷风V2.0--再战江湖) :多谢你的回帖,可如何把上面的代码和数据文件连结起来呀?  我很菜呀!!!另外:提示子函数未定义呀,帮忙呀,
    你的一点帮助,可能是我很大的进步呀!!
    你帮我了,我可以从很多地方回报你呀!
      

  9.   

    插值、绘图
     happywqw(键盘跳蚤) 的方法不错.去数值计算中找到曲线插值算法,应该有这方面的子程序.
      

  10.   

    把这个保存成test.txt文件,放在同一目录下即可
    然后运行那一段代码//多谢你的回帖,可如何把上面的代码和数据文件连结起来呀?  我很菜呀!!!
    已经连接起来了