簡體   English   中英

在 Altair 中訂購條形圖?

[英]Order bar chart in Altair?

如何訂購我的條形圖,使其按從最大值到最小值的順序排列? 我嘗試了下面的代碼,但它沒有給我預期的結果。

我希望條形按“b”、“a”、“c”排序(按計數)

df = pd.DataFrame([['a',2],['a',3],['b',4],['b',5],['b',4],['c',8]], columns=['Letters', 'Numbers'])

Letters Numbers
0   a   2
1   a   3
2   b   4
3   b   5
4   b   4
5   c   8

alt.Chart(df).mark_bar().encode(
   alt.X('Letters:N'),
   alt.Y('count():Q', sort=alt.EncodingSortField(field='count', op='count', order='ascending')))

輸出圖表

sort關鍵字需要應用於正在排序的軸 - 這里是X軸。

alt.Chart(df).mark_bar().encode(
   alt.X('Letters:N', sort=alt.EncodingSortField(field="Letters", op="count", order='ascending')),
   alt.Y('count():Q'))

簡單的替代方法,指定您要排序的頻道:

alt.Chart(df).mark_bar().encode(
   alt.X('Letters:N', sort='-y'),
   alt.Y('count():Q'))

文檔

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM