matlab怎么划分网格,matlab画图网格线设置

  matlab怎么划分网格,matlab画图网格线设置

  我有跟踪数据。每个轨迹由一系列坐标(x,y点)组成,每个轨迹由一个唯一的ID标识。

  这些轨迹在x-y平面上。我想把整个平面分成大小相等的网格(正方形网格)。这个网格很明显是不可见的,但是用来把轨迹分成子段。当轨迹与网格线相交时,它会被划分为一个新的子轨迹。在

  我附上了一个简单的手动图表来阐明我的期望。在

  你可以看到轨迹在网格线的交点处是如何分割的,每条线段都有一个新的唯一id。

  我在研究Python,想找一些Python实现的链接,建议,算法,甚至一个伪代码。在

  如果有什么不清楚的地方,请告诉我。在

  更新

  为了将平面分成网格,单元索引如下:# findingcell id用于每个坐标

  #cellid=(coord/cellSize)。astype(int)

  cellid=(coord/0.5)。astype(int)

  小区

  Out[] : array([[1,1],

  [3, 1],

  [4, 2],

  [4, 4],

  [5, 5],

  [6, 5]])

  #分别获取x单元id和y单元id

  x_cellid=cellid[:0]

  y_cellid=cellid[:1]

  #查找单元格总数

  xmax=df.xcoord.max()

  xmin=df.xcoord.min()

  ymax=df . ycord . max()

  ymin=df . ycord . min()

  x单元格个数=math.floor((xmax-xmin)/0.5)

  ycells的数量=math.floor((ymax-ymin)/0.5)

  total _ cells=no _ of _ x cells * no _ of _ y cells

  总计_单元格

  Out[] : 25

  因为这个平面现在被分成25个单元,每个单元都有一个单元。为了找到交点,也许我可以检查轨迹中的下一个坐标。如果像元ID保持不变,则该部分轨迹位于同一像元中,并且与格网没有交集。例如,如果x_cellid[2]大于x_cellid[0],则线段与垂直网格线相交。即便如此,我还是不确定如何找到与网格线的交点,并在交点处划分轨迹,赋予它们新的id。

matlab怎么划分网格,matlab画图网格线设置