У мене є існуючий сюжет, який створили з такими пандами:
df['myvar'].plot(kind='bar')
Вісь y має формат як float, і я хочу змінити вісь y на відсотки. У всіх знайдених нами рішеннях використовується синтаксис ax.xyz, і я можу розміщувати код лише під рядком вище, що створює графік (я не можу додати ax = ax до рядка вище.)
Як я можу відформатувати вісь y у відсотках, не змінюючи рядок вище?
Ось таке рішення, яке я знайшов, але вимагає переробити сюжет :
import matplotlib.pyplot as plt
import numpy as np
import matplotlib.ticker as mtick
data = [8,12,15,17,18,18.5]
perc = np.linspace(0,100,len(data))
fig = plt.figure(1, (7,4))
ax = fig.add_subplot(1,1,1)
ax.plot(perc, data)
fmt = '%.0f%%' # Format you want the ticks, e.g. '40%'
xticks = mtick.FormatStrFormatter(fmt)
ax.xaxis.set_major_formatter(xticks)
plt.show()
Посилання на вищезазначене рішення: Pyplot: використання відсотків по осі x