4
[ [ 99  66]
  [118  67]
  [119  67]
  [120  67]
  [121  67]
  [121  68]
  [121  70]
  [ 95  71]
  [121  71]
  [123  98]
  [133 109]
  [136 110]
  [150 126]
  [153 126]
  [153 128]
  [153 129]]

我有这个 numpy 数组,其中包含我想绘制到矩阵上的坐标集。我怎样才能把这个numpy数组变成这样的东西

[[0 1 1 ..., 0 1 1]
 [0 0 1 ..., 1 1 1]
 [0 0 0 ..., 1 0 0]
 ..., 
 [0 0 0 ..., 0 1 0]
 [1 0 0 ..., 0 0 1]
 [0 1 0 ..., 1 1 1]]`

所以我能够将我想要的东西绘制到我的矩阵上

4

2 回答 2

0
width = max(coord[0] for coord in coordinates)
height = max(coord[1] for coord in coordinates)
zeros_and_ones = numpy.zeros([width, height])
for x, y in coordinates:
    zeros_and_ones[x, y] = 1
于 2013-03-13T09:50:40.293 回答
0

如果你有一个 numpy 数组,这可能会更快(它假设这coord是积极的):

maxcoord = np.amax(coord, axis=0)
zeros_and_ones = numpy.zeros(maxcoord)
zeros_and_ones[coord[0], coord[1]] = 1

如果coord由整数组成但具有负值,您可以简单地重新调整它

于 2013-03-13T10:00:13.260 回答