Изменить стиль линии графика в полярных координатах

Рейтинг: 0Ответов: 1Опубликовано: 14.02.2023

Пытаюсь соединить точки на круговом графике:

plt.figure(figsize=(8, 8))
plt.axes(projection = 'polar')
  
# creating an array
rads = np.linspace(0, 23, 24)*15
  
# plotting the ellipse
dots=[]
for _ in range(len(rads)):
    s = np.random.randint(10,50)
    dots.append(s)
plt.polar(rads, dots, 'g.', linestyle='--')
    
plt.show()

Смущают какие-то концентрические звезды, которые получаются при этом(( введите сюда описание изображения

Я-то ожидаю что-то типа такого: введите сюда описание изображения

Ответы

▲ 3Принят

Нужно просто правильно подобрать значения. Окружность - это 2 Pi, а с вашими значениями вы делаете по нескольку оборотов круга за один шаг, ну и радиус у вас слишком сильно скачет.

import numpy as np
import matplotlib.pylab as plt
import math


plt.figure(figsize=(8, 8))
plt.axes(projection = 'polar')
  
# creating an array
rads = np.linspace(0, 1, 24) * 2 * math.pi # теперь только один оборот круга
  
# plotting the ellipse
dots=[]
for _ in range(len(rads)):
    s = np.random.randint(45,55) # и радиус не такой скачущий тоже
    dots.append(s)
plt.polar(rads, dots, 'r-', linestyle='--')
    
plt.show()

введите сюда описание изображения