X,Y带动画的散点图

时间:2013-03-22 20:58:40

标签: excel dynamic plot animated scatter

我正在寻找一种方法来绘制(X,Y)平面内的多个点,并让它们一次出现(然后消失)。我总共有大约400(x,y)个点,这是从惯性测量单元收集的位置跟踪信息。

每个数据点相隔约4 ms(我可以更改此间隔以使其更长),因此如果可能,我希望一次显示一个点,每个点持续4ms,直到出现下一个点。最终产品应在5-6秒采样时间内显示对象的移动路径。从我的excel文件中,我有两列(一个用于X,一个用于Y),长度为400个元素(400行)。

我希望有一种方法可以一次绘制一行X,Y散射信息,并寻找一些代码,这些代码将逐行增加并绘制相应的散射图。我是一个半流利的程序员,但之前从未使用过MS Visual Basic。到目前为止我找到的所有Excel解决方案(与我的问题类似)都涉及在Visual Basic中编写图形代码。如果有人可以帮助我使用代码,我想我可以做到这一点......但是如果还有另一个软件可以做到这一点(免费!我是学生预算!)那么我愿意尝试多种解决方案。

我已经找到了这段代码:

Sub Macro1()
   Charts.Add
    ActiveChart.ChartType = xlXYScatter
    ActiveChart.SetSourceData Source:=Sheets("Sheet1").Range("A3:B3"), PlotBy _
        :=xlColumns
    ActiveChart.Location Where:=xlLocationAsObject, Name:="Sheet1"
    With ActiveChart.Axes(xlCategory)
        .MinimumScale = -30
        .MaximumScale = 30
        .MinorUnit = 1
        .MajorUnit = 5
        .Crosses = xlAutomatic
        .ReversePlotOrder = False
        .ScaleType = xlLinear
        .DisplayUnit = xlNone
    End With
    With ActiveChart.Axes(xlValue)
        .MinimumScale = 0
        .MaximumScale = 2800
        .MinorUnit = 50
        .MajorUnit = 100
        .Crosses = xlAutomatic
        .ReversePlotOrder = False
        .ScaleType = xlLinear
        .DisplayUnit = xlNone
    End With
     For I = 3 To Worksheets(1).Range("A65536").End(xlUp).Row
    ActiveChart.SetSourceData Source:=Sheets("Sheet1").Range("A3:B" & I), PlotBy _
        :=xlColumns
    ActiveChart.Location Where:=xlLocationAsObject, Name:="Sheet1"
ST = Timer
    While Timer < ST + 1
    Wend
    Next I
End Sub

然而,由于没有任何评论或文档,我很难仔细阅读并将其分开。我觉得一旦我能真正理解Visual Basic的格式,我就可以修改程序以适应我的特定需求......但理解它是第一步。

所以再次,我的信息格式为3列: X位移 - Y位移 - 时间戳 (以毫米为单位的位置)(以毫米为单位的位置)(秒,或迭代#,以较容易的方式)

0 个答案:

没有答案