Как добавить информацию к метке оси X построенного графика в Python? - PullRequest
0 голосов
/ 07 февраля 2020
import pandas as pd
import matplotlib.pyplot as plt

my_funds = [10, 20, 50, 70, 90, 110]
my_friends = ['Angela', 'Gabi', 'Joanna', 'Marina', 'Xenia', 'Zulu']
my_actions = ['sleep', 'work', 'play','party', 'enjoy', 'live']
df = pd.DataFrame({'Friends': my_friends, 'Funds':my_funds, 'Actions': my_actions})

производит:

enter image description here

Затем я планирую это так:

df.plot (kind='bar', x = "Friends" , y = 'Funds', color='red', figsize=(5,5))

, получая следующее :

enter image description here

Какова цель?

Тот же график , но вместо "Анжелы" «Анжела - спи» написано на оси абсцисс. «Сон» происходит из столбца «Действие».

Далее [Gabi - work, Joanna - play, Marina - party, Xenia - enjoy, Zulu - live]

Ответы [ 2 ]

2 голосов
/ 07 февраля 2020

Ради этого вопроса проще создать дополнительный столбец с желаемыми значениями, а затем передать его в df.plot():

df['Friends_actions'] = df['Friends'] + " " + df['Actions']
df.plot(kind='bar', x = "Friends_actions" , y = 'Funds', color='red', figsize=(5,5))

Вывод: enter image description here

2 голосов
/ 07 февраля 2020

Решением может быть создание нового столбца в вашем DataFrame:

df["Friend-Action"] = [f"{friend} -> {action}" for friend, action in zip(df["Friends"], df["Actions"])]

Затем построите этот столбец:

df.plot (kind='bar', x = "Friend-Action" , y = 'Funds', color='red', figsize=(5,5))

enter image description here

...