让 Altair 与 Jupyter Notebook 一起工作

Posted

技术标签:

【中文标题】让 Altair 与 Jupyter Notebook 一起工作【英文标题】:Getting Altair to work with Jupyter Notebook 【发布时间】:2019-01-31 23:28:21 【问题描述】:

试图让 Altair 与 Jupyter Notebook 一起使用,我使用它安装了它

conda install -c conda-forge altair vega_datasets notebook vega

但是当我尝试做一个示例情节时

import altair as alt
from vega_datasets import data

# for the notebook only (not for JupyterLab) run this command once per session
alt.renderers.enable('notebook')

iris = data.iris()

alt.Chart(iris).mark_point().encode(
    x='petalLength',
    y='petalWidth',
    color='species'
)

正如他们的quick start guide 所见,我明白了

ValueError: 
To use the 'notebook' renderer, you must install the vega package
and the associated Jupyter extension.
See https://altair-viz.github.io/getting_started/installation.html
for more information.

即使我已经使用 Conda 安装了 vega。不过,我可以制作 vega 示例图。我无法启用 Jupyter 扩展,因为 Jupyter 说它不兼容。

感谢任何帮助。

【问题讨论】:

【参考方案1】:

对于当前版本的 altair(2.2 版),请使用

conda install -c conda-forge vega=1.3

pip install vega==1.3

然后重启笔记本。

vega python 扩展本周被错误地更新为仅支持尚未发布的 vega-lite 3.0,因此 Altair 尚不支持。

有关初始错误报告,请参阅 https://github.com/altair-viz/altair/issues/1114。

【讨论】:

是的。非常感谢。作为记录,这个的 conda 版本不起作用(但 pip 起作用了)。 谢谢 - 如果 conda-forge 频道不在您的默认设置中,您需要指定它,就像您在问题中所做的那样。我已经编辑了答案以更清楚地说明这一点。 这里也一样,conda install -c conda-forge vegaconda install -c conda-forge vega=1.3 对我不起作用(在解决环境问题上停留了>12 小时;我按照github.com/conda/conda/issues/8197 的建议尝试了conda config --set channel_priority strict,但仍然没有运气)。但是,pip install vega 确实立即起作用。使用 Windows 10、Python 3.7.6、Conda 4.6.14。

以上是关于让 Altair 与 Jupyter Notebook 一起工作的主要内容,如果未能解决你的问题,请参考以下文章

Linux Ubuntu下Jupyter Notebook的安装

Python与金融分析基础

从父目录中的 python 模块导入到子目录中的 jupyter notebook 文件中

如何使 Altair 绘图响应

Plotly express 与 Altair/Vega-Lite 的交互式绘图

ETH2.0:Altair 升级