如何在Python/Altair中按字段范围配置颜色比例尺?
正确的Altair实现方式
要在Altair中实现Vega-Lite里通过字段定义颜色比例尺范围的功能,你需要使用alt.Scale结合alt.Field来指定范围对应的字段,而非直接传入字段字符串。
正确的代码写法如下:
chart = alt.Chart(df).mark_rect().encode( x='x:O', y='y:O', color=alt.Color( 'label:N', scale=alt.Scale(range=alt.Field('color')), title='' ) )
这里的核心是用alt.Field('color')替代你之前错误使用的range('color:N'),这样Altair就能识别到要从数据的color字段中读取颜色值作为比例尺的范围,和你提供的Vega-Lite JSON配置效果完全一致。
内容的提问来源于stack exchange,提问作者aborruso
相关产品推荐
相关产品推荐

