在选择功能上,我们能做出一些更酷炫的高级功能,例如对选中的数据点进行统计,生成实时的直方图。
叠加多个图层
如果把前面的汽车耗油量按年度计算出平均值:
alt.Chart(cars).mark_point().encode( x='Miles_per_Gallon', y='Horsepower', color='Acceleration' )
在统计学上,我们还能定义平均值的置信区间,为了让图表更好看,可以分别列出三个不同产地汽车的耗油量平均值置信区间:
alt.Chart(cars).mark_area(opacity=0.3).encode( x=alt.X(‘Year’, timeUnit=’year’), y=alt.Y(‘ci0(Miles_per_Gallon)’, axis=alt.Axis(title=’Miles per Gallon’)), y2=’ci1(Miles_per_Gallon)’, color=’Origin’ ).properties( width=600 )
最后我们可以用图层API将平均值和置信区间两幅图叠加起来:
spread = alt.Chart(cars).mark_area(opacity=0.3).encode( x=alt.X('Year', timeUnit='year'), y=alt.Y('ci0(Miles_per_Gallon)', axis=alt.Axis(title='Miles per Gallon')), y2='ci1(Miles_per_Gallon)', color='Origin' ).properties( width=800 ) lines = alt.Chart(cars).mark_line().encode( x=alt.X('Year', timeUnit='year'), y='mean(Miles_per_Gallon)', color='Origin' ).properties( width=800 ) spread lines