8wDlpd.png
8wDFp9.png
8wDEOx.png
8wDMfH.png
8wDKte.png

在我的直方图 Python/Matplotlib 上添加数据标签

user2962069 2月前

39 0

我正在尝试在直方图顶部添加数据标签值,以尝试明显地显示频率。这是我现在的代码,但不确定如何编写代码将值放在顶部:plt.figure(figsize=(15,10))...

我正在尝试在直方图顶部添加数据标签值,以尝试明显地显示频率。

这是我现在的代码,但不确定如何编写代码来将值置于顶部:

plt.figure(figsize=(15,10))
plt.hist(df['Age'], edgecolor='white', label='d')
plt.xlabel("Age")
plt.ylabel("Number of Patients")
plt.title = ('Age Distrubtion') 

我想知道是否有人知道执行此操作的代码:

enter image description here

帖子版权声明 1、本帖标题:在我的直方图 Python/Matplotlib 上添加数据标签
    本站网址:http://xjnalaquan.com/
2、本网站的资源部分来源于网络,如有侵权,请联系站长进行删除处理。
3、会员发帖仅代表会员个人观点,并不代表本站赞同其观点和对其真实性负责。
4、本站一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请向站长举报
5、站长邮箱:yeweds@126.com 除非注明,本帖由user2962069在本站《matplotlib》版块原创发布, 转载请注明出处!
最新回复 (0)
  • 使用返回的条形图来 bar_label() 使用新 plt.hist() .

    以下是一个例子:

    from matplotlib import pyplot as plt
    import pandas as pd
    import numpy as np
    
    df = pd.DataFrame({'Age': np.random.randint(20, 60, 200)})
    
    plt.figure(figsize=(15, 10))
    values, bins, bars = plt.hist(df['Age'], edgecolor='white')
    plt.xlabel("Age")
    plt.ylabel("Number of Patients")
    plt.title('Age Distrubtion')
    plt.bar_label(bars, fontsize=20, color='navy')
    plt.margins(x=0.01, y=0.1)
    plt.show()
    

    plt.hist() with plt.bar_label()

    PS:由于年龄是离散分布,建议明确设置分箱边界,例如 plt.hist(df['Age'], bins=np.arange(19.999, 60, 5)) .

  • 请注意,bar_label 仅在 matplotlib 3.4 或更高版本中可用。

  • 对我来说,像这样设置标题不起作用。我需要类似 fig, ax = plt.subplots(); ax.set_title = ('Age Distrubtion')

  • @Julian 非常感谢您指出这个错误。看来我只是复制了原始代码的那部分而没有检查它。plt.title = \'...\' 不仅不起作用,而且之后会使该函数无法访问。正确的方法应该是 plt.title(\'...\') 或 ax.set_title(\'...\'),正如您所指出的。

  • plt.ylabel () 带有一个名为的参数 loc ,可用于定义标签的位置:

    plt.ylabel("Age", loc="top")
    

    如果您想要手动控制,您可以使用参数 **kwargs 传入 Text 对象( 文档 ),该对象可以接收 x y 协调值来放置文本。

    plt.ylabel("Age", text(x=100, y=200, rotation='horizontal'))
    
  • 嘿伙计,谢谢你的回复,但是当我运行该代码时,我收到以下错误:ValueError:'top' 不是 loc 的有效值;支持的值是 'left'、'center'、'right'

  • @RubenVellupillai 我相信你正在运行 plt.xlabel() 的代码而不是 plt.ylabel()

  • @RubenVellupillai 通过 import matplotlib.pyplot.text as text 导入模块

返回
作者最近主题: