Получить координаты из CirclePolygon в matplotlib.patches - PullRequest
0 голосов
/ 09 мая 2018

У меня есть следующий код, который генерирует многоугольник круга (аппроксимация многоугольника патча круга) с использованием Python matplotlib.

import matplotlib.pyplot as plt
from matplotlib.patches import CirclePolygon

circle = CirclePolygon((0, 0), radius = 0.75, fc = 'y')
plt.gca().add_patch(circle)
plt.axis('scaled')
plt.show()

Для кода выше у меня есть вывод, приведенный ниже:
CirclePolygon

Мне нужны все точки, которые вместе образуют многоугольник круга. Как этого достичь?

1 Ответ

0 голосов
/ 09 мая 2018

Полигон основан на пути.Вы можете получить этот путь через circle.get_path().Вы заинтересованы в vertices этого пути.Наконец, вам необходимо преобразовать их в соответствии с преобразованием полигона.

import matplotlib.pyplot as plt
from matplotlib.patches import CirclePolygon

circle = CirclePolygon((0, 0), radius = 0.75, fc = 'y')
plt.gca().add_patch(circle)

verts = circle.get_path().vertices
trans = circle.get_patch_transform()
points = trans.transform(verts)
print(points)

plt.plot(points[:,0],points[:,1])
plt.axis('scaled')
plt.show()

Синяя линия - это график полученных таким образом точек.

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...