Я пытаюсь построить 1000 отрезков, на одном участке, используя следующий кодНевозможно увидеть отрезок на участке
corr1 = [round(pic.autocorr(i),4) for i in range(1,1001)]
index = range(1,1001)
y_points = zip(index, corr1)
x_points = zip(index, [ 0 for i in range(1,1001)])
line_collection = []
for i in range(0,1000):
temp = []
temp.append(x_points[i])
temp.append(y_points[i])
line_collection.append(temp)
lc = mc.LineCollection(line_collection, color = 'r', linewidth = 1)
fig, ax = plt.subplots(figsize = (20,6))
ax.cla()
ax.add_collection(lc)
ax.set_ylabel('autocorrelation')
ax.set_xlabel('lag')
ax.set_xticks([range(1,1001,50)])
ax.set_yticks([ x/10.0 for x in range(-10, 11,1)])
plt.show()
Что я получаю сообщение об ошибке, как
ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()
Я думаю, ошибка вызвана этими двумя линиями
ax.set_xticks([range(1,1001,50)])
ax.set_yticks([ x/10.0 for x in range(-10, 11,1)])
С тех пор, как я прокомментировал эти две строки, сообщение об ошибке не будет отображаться вверх. Но я до сих пор не знаю, в чем проблема, вызвавшая ошибку в этих двух строках. И я все еще не могу построить фигуру, которую хочу. Что я могу получить:
Я думаю, что данные уже были нанесены на фигуру, так как, когда я наводил мышь на график, на экране отобразится значение x и y. Я действительно не знаю, в чем же причина, почему сюжет не появится.
Попробуйте 'ax.set_xticks (диапазон (1,1001,50))' без дополнительного списка. – ImportanceOfBeingErnest
Это работает !! Большое спасибо!! Я потратил часы на это! T.T –