Josh孙奕承 2023-02-26 19:08 采纳率: 90.9%
浏览 40
已结题

python横向柱状图问题

想做一个百分比占比图,所有数据都是float小数。不知道打标签同时把它们转换成百分比。
我做的图是这样的

img

表格和代码是这样的

img

plt.figure(figsize=(8,4),dpi=300)#定义画布
plt.barh(img_cost_structure['variable'],width=img_cost_structure['value'],height=0.4,error_kw = {'ecolor' : '0.2', 'capsize' :2},color='y',edgecolor='black')#画横向柱状图
plt.show()  

我想做成下面的样子

img

该怎么做?

  • 写回答

4条回答 默认 最新

  • 似水不惧 2023-02-26 20:11
    关注
    import matplotlib.pyplot as plt
    from matplotlib.ticker import FuncFormatter
    y_data = [ 10, 21, 13, 7, ]
    x_data = ('a', 'b', 'c', 'd')
    bar=plt.barh(x_data, y_data)
    def to_percent(temp, position):
      return '%1.0f'%(temp) + '%'
    #plt.gca().yaxis.set_major_formatter(FuncFormatter(to_percent))
    plt.gca().xaxis.set_major_formatter(FuncFormatter(to_percent))
    plt.bar_label(bar,fmt='%g%%')
    
    

    img


    希望有用

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 3月6日
  • 已采纳回答 2月26日
  • 创建了问题 2月26日

悬赏问题

  • ¥15 微信公众平台自制会员卡可以通过收款码收款码收款进行自动积分吗
  • ¥15 随身WiFi网络灯亮但是没有网络,如何解决?
  • ¥15 gdf格式的脑电数据如何处理matlab
  • ¥20 重新写的代码替换了之后运行hbuliderx就这样了
  • ¥100 监控抖音用户作品更新可以微信公众号提醒
  • ¥15 UE5 如何可以不渲染HDRIBackdrop背景
  • ¥70 2048小游戏毕设项目
  • ¥20 mysql架构,按照姓名分表
  • ¥15 MATLAB实现区间[a,b]上的Gauss-Legendre积分
  • ¥15 delphi webbrowser组件网页下拉菜单自动选择问题