График не имеет одинаковые размеры х и у?Я не понимаю - PullRequest
0 голосов
/ 07 декабря 2018

Раньше это работало, но теперь ничего не изменилось, и я не знаю, что случилось.Я оглянулся, но не могу найти ответ.Возможно, это что-то глупое, но я могу найти это и сидеть здесь часами xD

Сообщение об ошибке: ValueError: x и y должны иметь одинаковое первое измерение, но иметь формы (8,) и (9,)

import numpy as np
import matplotlib.pyplot as plt


numrange = range(0,360)
theta = numrange[0::45]
r = [-2.000, -2.000, -1.561, -1.592, -0.597, -2.000, -2.000, -0.187, -2.000]

ax = plt.subplot(111, projection='polar')
ax.plot(theta, r)
ax.set_rmax(1)
ax.set_rticks([-2, -1.5, -1, -0.5, 0, 0.5, 1, 1.5, 2])
ax.set_rlabel_position(-22.5)
ax.grid(True)

ax.set_title("A line plot on a polar axis", va='bottom')
plt.show()

1 Ответ

0 голосов
/ 07 декабря 2018

Ваш numrange генерирует следующие значения для тета:

[0, 45, 90, 135, 180, 225, 270, 315]

и ваш r выглядит так:

[-2.0, -2.0, -1.561, -1.592, -0.597, -2.0, -2.0, -0.187]

длина тета равна 8, а длина r равна 9.

Вы можете удалить одно значение r или просто изменить числовое значение на (0,361):

numrange = range(0,361)

, чтобы получить значение 360 градусов по оси вращения:

[0, 45, 90, 135, 180, 225, 270, 315, 360]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...