Построение p ie -плота с Pandas in Python - PullRequest
0 голосов
/ 18 марта 2020

Я начал работать с графиком Matplotlib p ie и до сих пор хорошо выглядит! У меня только несколько выпусков.

Меня интересует определенный столбец, и они являются своего рода категориальными, но цифры и эти числа означают разные вещи, которые я хотел бы изобразить на графике p ie .

Вот мой рабочий код. Я начал со словаря Python, чтобы отобразить числа

valuelables = {
    1:"Deutschland",
    2:"UK",
    3:"America"
}

s1 = df.request.value_counts(normalize=True)*100
size = s1.tolist()
keys = s1.keys().tolist()

, чтобы вы могли производить на локальном компьютере:

print(size) # size gives a list [99.22871437721278, 0.5294334011693548, 0.2418522216178678]
print(keys) # keys give [2, 1, 3]
patches, texts = plt.pie(size, shadow=True, startangle=90, autopct='%1.1f%%')
plt.legend(patches, valuelables[keys], loc="best")
plt.axis('equal')

К сожалению, я получаю следующая ошибка: TypeError: unhashable type: 'list'

Это очевидно происходит из сопоставления словаря в plt.legend (). Как мне отобразить его, чтобы получить новый график p ie, как показано ниже, со значениями на графике, подобными второму графику:

enter image description here

enter image description here

...