使用Altair与Streamlit绘制多变量径向图的问题求助
使用Altair+Streamlit绘制双变量径向图的问题
数据结构
| 厂商(make) | 数量(count) | 数值(value) | 整数数值(value_int) |
|---|---|---|---|
| MERCEDES-BENZ | 8637 | 21.0283 | 21 |
| FORD | 9405 | 22.0488 | 22 |
| SKODA | 10617 | 26.6724 | 26 |
| TOYOTA | 10903 | 24.2498 | 24 |
| VOLKSWAGEN | 11178 | 25.4069 | 25 |
| OPEL | 11672 | 28.5445 | 28 |
当前代码
# d3是上述DataFrame p1 = alt.Chart(d3).encode( theta=alt.Theta('value:Q', stack=True), radius=alt.Radius('count', scale=alt.Scale(zero=True, rangeMin=20)), color=alt.Color('make:N', legend=alt.Legend(orient='top')) ).properties( height=600 ) p11 = p1.mark_arc() st.altair_chart(p11)
问题说明
尝试用Altair和Streamlit绘制径向图,展示不同汽车厂商的两个参数(count和value),期望实现按厂商着色的径向条,优先将value设为radius、count设为theta(或反之),同时展示两个变量的信息。
当前代码生成的图表不符合预期:当把Theta/Radius设为同一变量时图表显示正常,但无法同时展示两个参数;尝试过将数值转为整数、切换缩放类型(如从sqrt改为linear)等调整,均无法实现双变量展示的效果,求解决思路。
内容的提问来源于stack exchange,提问作者Chris R
相关产品推荐
相关产品推荐

