Не конвертируйте в декартовую систему координат, если вы просто хотите, чтобы два 2D-массива задавали координаты r
и theta
на полярной сетке.
Чтобы уточнить, ошибка, которую вы видите, состоит в том, что вы не можете выполнять умножение по типу между двумя массивами неравной формы, что и есть то, что у вас есть.
Вы должны называть это так:
radius_matrix, theta_matrix = numpy.meshgrid(r,theta)
Тогда можно преобразовать в декартовых координатах (если действительно необходимо), набрав:
X = radius_matrix * numpy.cos(theta_matrix)
Y = radius_matrix * numpy.sin(theta_matrix)
Визуализация может быть сделано на полярной сетке сразу , используя, например, Matplotlib:
import matplotlib.pyplot as plt
ax = plt.subplot(111, polar=True)
ax.plot(theta_matrix, radius_matrix, color='r', ls='none', marker='.')
Посмотрите на polar plot demo, если вы хотите другой пример.
В качестве альтернативы, можно построить полярную сетку вы сделали откладывая декартовы координаты, полученные ранее на декартовой сетке:
plt.plot(X,Y, 'r. ')
plt.show()