如何使用python中的plotnine库将y轴更改为百分比,而不是小数?
条形图的mwe如下:
from plotnine import *
from plotnine.data import mpg
p = ggplot(mpg) + geom_bar(aes(x='manufacturer', fill='class'), position='fill')
print(p)
下图所示:
Stacked bar chart with y axis as fraction not percent
使用r中的ggplot2很简单,只需添加:
+ scale_y_continuous(labels = scales::percent)
然而,我在plotnine中找不到如何做到这一点。
有什么建议吗?
最佳答案
labels
参数接受以断点列表为输入的可调用。您只需手动转换列表中的每个项目:
scale_y_continuous(labels=lambda l: ["%d%%" % (v * 100) for v in l])