该错误通常发生在尝试将分面图堆叠到其他图层时。要避免这种情况,需要使用facet或repeat来处理分面图。以下是一些可能的解决方法示例:
使用facet_wrap函数代替layered图层,例如:
import altair as alt from vega_datasets import data
iris = data.iris()
chart = alt.Chart(iris).mark_bar().encode( x='petalLength:Q', y=alt.Y('count()', title='Number of Flowers'), color='species:N' ).facet( column='species:N' ).properties( title='Histogram of Iris Flower Petal Lengths, Faceted by Species' )
chart.show()
使用repeat函数代替layered图层,例如:
import altair as alt from vega_datasets import data
iris = data.iris()
chart = alt.Chart(iris).mark_bar().encode( x='petalLength:Q', y=alt.Y('count()', title='Number of Flowers'), color='species:N' ).repeat( column=['sepalLength', 'petalWidth', 'sepalWidth'] ).properties( title='Histogram of Iris Flower Petal Lengths, Repeated Across Columns' )
chart.show()
这些方法将分面图设置为虚拟图层,从而避免了将它们堆叠到其他图层中。
下一篇:Altair中的子弹图