1

我想比较一个 altair(最终是 vega-lite)分层图的多个条件。完美的解决方案是刻面/格子图,这样我就可以并排看到不同的条件。不幸的是,我无法弄清楚如何给出命令来绘制不同的条件。

这是我基于分层图示例实现我的想法的尝试:(https://github.com/ellisonbg/altair/blob/master/altair/notebooks/07-LayeredCharts.ipynb

import pandas as pd
import numpy as np

data = pd.DataFrame({'x':np.random.rand(10), 'y':np.random.rand(10), 'z':['a', 'b']*5})

chart = LayeredChart(data)
chart += Chart().mark_line().encode(x='x:Q', y='y:Q', column='z:Q')
chart += Chart().mark_point().encode(x='x:Q', y='y:Q', column='z:Q')    
chart 

与示例相比,我添加了带有两个条件的列“z”,以及图表定义中的两个列语句。此解决方案生成看似不错的 Vega-lite 代码,但没有情节。或者我尝试了“chart = LayeredChart(data).encode(column='z:Q')”但我得到了错误'LayeredChart' object has no attribute 'encode'

我想知道是否有可能对分层图进行刻面(格子),以及在未来的 Vega-Lite 版本中是否有可能。

我正在将 jupyter 与 Anaconda 一起使用

4

1 回答 1

3

分层仅在当前版本的 Vega-Lite 和 Altair 中得到实验性支持,我相信您已经遇到了不支持的方面之一。这应该在今年春季晚些时候的 Vega-Lite 2.0 版本(和相关的 Altair 版本)中得到解决。

于 2017-03-29T20:27:38.313 回答