【问题标题】:Limit to 10 in bar graph条形图中限制为 10
【发布时间】:2023-03-18 13:32:02
【问题描述】:

我正在尝试在 python 中使用 altair 包制作条形图。我使用了下面的代码并得到了如下的输出

alt.Chart(final1,title="Avg salary for IT Project Manager I in each company ").mark_bar(size=20).encode(
    alt.X("company:N", sort="-y"),
    alt.Y("average(salary)"),
    color=alt.condition(
        alt.datum.company == 'Celerity',  
        alt.value('orange'),     
        alt.value('steelblue')   
    )
).properties(width=800)

任何人都可以帮助我将其限制为仅排名前 10 的公司,因为图表看起来很奇怪,因为我选择了所有公司。我试图在网上找到解决方案,但找不到任何解决方案。提前致谢

【问题讨论】:

  • 对输入数据进行排序然后过滤呢? (例如,data[:10]
  • 谢谢@floatingpurr 对链接中提供的代码进行了一些更改,并且成功了。
  • @rishi 您能否将您的解决方案添加为问题的答案,以便将其标记为已解决?

标签: python python-3.x data-visualization bar-chart altair


【解决方案1】:

我最后使用了添加此属性,它对我有用。谢谢大家的帮助

.transform_window(
    rank='rank(salary)',
    sort=[alt.SortField('salary', order='descending')]
).transform_filter(
    (alt.datum.rank < 30)
).properties(width=400, height=300)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-03-08
    • 2020-02-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-15
    • 2014-06-06
    • 1970-01-01
    相关资源
    最近更新 更多