2

配列インデックスのコードの最後の行で何か間違ったことをしていると思います。p の出力を次のようにしたい-

array([[ 0,  0,  0],
       [ 0,  0,  0],
       [44,  0,  0],
       [45, 55,  0],
       [46, 56,  0],
       [47, 57,  0],
       [48, 58,  0],
       [39, 49, 59],
       [40, 50, 60]])

ここにコードがあります-

import numpy as np
dx = 8
dy = 10
bx = 5.34
by = 1.09
index = np.zeros((dx+dy),dtype = 'int32')
for i in np.arange(1,dy+1):
    for j in np.arange (1,dx+1):
        if i-by > 0:
            theta = 180*np.arctan(abs(j-bx)/(i-by))/np.pi
            if theta<10:
                r = np.around(np.sqrt((j-bx)**2+(i-by)**2))                
                if r>0:
                    index[r]+=1                 
                    p = np.zeros((r,index[r]),dtype = 'int32')
                    p[r,index[r]] = i+(j-1)*dy

誰かが私が間違っていることを指摘してもらえますか? ありがとうございました。

4

2 に答える 2