2
Я пытаюсь построить информацию из этого DataFrame:Matplotlib: Не удался преобразовать строку плавать
sold not_sold success_rate
category PriceBucket PriceBucketTitle
Papeterie 0 [0, 2] 42401 471886 17.130
1 (2, 3] 28627 360907 17.240
2 (3, 3.5] 46198 434063 18.370
3 (3.5, 4] 80307 564594 17.870
4 (4, 5] 28653 171226 16.860
5 (5, 6] 50301 415379 17.385
6 (6, 8] 45370 446013 17.730
7 (8, 10] 39859 360187 18.005
8 (10, 18] 52263 381596 17.630
9 (18, 585] 36897 387145 19.730
И это мой код:
import matplotlib.pyplot as plt
import numpy as np
fig, ax = plt.subplots()
plt.title('Success Rate By Category : ' + str(group['category'].iloc[0]))
ax2 = ax.twinx()
x = last_merge['PriceBucket'].as_matrix()
ax2.bar(x, last_merge['sold'].as_matrix(), color='None')
ax2.bar(x, last_merge['not_sold'].as_matrix(), color='None', edgecolor='red', hatch="/")
ax.plot(x, last_merge['success_rate'].as_matrix(), color='blue')
ax2.set_ylabel("Product's number", color='red')
ax.set_ylabel(ylabel='Success Rate', color='blue')
ax.set_xlabel('Same X-values')
plt.show()
Теперь моя цель, чтобы получить «PriceBucketTitle» на x, вместо «PriceBucket». Сообщение об ошибке:
ValueError: could not convert string to float: [0, 2]
Помощь? Thnx
Ну, я думаю, что ошибка говорит само за себя: он пытается найти поплавок или строку под формат поплавка, но только найти '[0 , 2] ', которые не могут быть преобразованы в float – HolyDanna