python直方图y轴显示占比,而不是绝对数值

  统计/机器学习 数据可视化 Python
3

python里面(pyplot)怎么画直方图可以让y轴显示百分比,而不是绝对的数值统计?

我现在是直接用ply.hist,得到的是长下面这样的

我希望y轴显示的是百分比,比重之类。

谢谢!


 

小菜   2017-06-11 10:37



   1个回答 
5


import matplotlib
from numpy.random import randn
import matplotlib.pyplot as plt
from matplotlib.ticker import FuncFormatter
# 把y轴转化为百分比。
def to_percent(y, position):
    return str(100 * y) + '%'
# 直方图的数据集
x = randn(500)
# 设置直方图分组数量bins=60.
plt.hist(x, bins=60, weights= [1./ len(x)] * len(x))
formatter = FuncFormatter(to_percent)
plt.gca().yaxis.set_major_formatter(formatter)
plt.show()




黄前志   2017-07-19 10:48



相关问题

python里怎么实现柱状图?   1回答

python里画出“热图”   2回答

matplotlib.pyplot画图的标题中插入变量   1回答

用plt.hist画直方图,怎么返回每个bins的上下界和个数?   1回答

matplotlib.pyplot环境下给曲线下方的面积涂色?   1回答

seaborn如何显示图?   1回答

matpltlib怎么给直方图加上拟合曲线?   1回答

怎么用matplotlib.pyplot画出堆积柱状图?   1回答

plt.scatter plot怎么让不同的类别有不同的颜色   2回答

python怎么画excel里那种双y轴的图?   1回答

matplotlib如何设置画图格式,使得可视化效果更好   2回答

matplotlib.pyplot画图怎么添加横轴,纵轴的名字?   1回答



回答问题时需要注意什么?

我们谢绝在回答前讲“生动”的故事。

我们谢绝“这么简单,你自己想”、“书上有的,你认真看”这类的回答;如果你认为对方的提问方式或者内容不妥,你可以直接忽略该问题,不用进行任何作答,甚至可以对该问题投反对票。

我们谢绝答非所问。

我们谢绝自己不会、硬要回答。

我们感激每一个用户在编写答案时的努力与付出!