Altair中使用xOffset参数遇SchemaValidationError,求解决方案
解决Altair中xOffset参数的SchemaValidationError错误
错误原因
你当前使用的是Altair v4版本,该版本的编码规范中不存在xOffset这个顶级参数——xOffset是Altair v5及以上版本才新增的特性,因此v4会抛出"额外属性不允许"的Schema验证错误。
两种解决方案
方案1:升级到Altair v5+
执行以下命令升级库:
pip install --upgrade altair
升级完成后,你原来的代码可以直接正常运行,v5完全支持xOffset作为顶级编码参数。
方案2:在Altair v4中使用嵌套的offset参数
如果无法升级版本,可将偏移量配置嵌套在alt.X()编码内,修正后的代码如下:
import altair as alt import pandas as pd source = pd.DataFrame({"Category":list("AAABBBCCC"), "Group":list("xyzxyzxyz"), "Value":[0.1, 0.6, 0.9, 0.7, 0.2, 1.1, 0.6, 0.1, 0.2]}) alt.Chart(source).mark_bar().encode( x=alt.X("Category:N", offset="Group:N"), y="Value:Q", color="Group:N" )
这种写法符合Altair v4的编码规范,能实现相同的分组偏移效果。
内容的提问来源于stack exchange,提问作者Feiyang Deng
相关产品推荐
相关产品推荐

