无法在iPython笔记本中使用Vincent绘制世界地图

时间:2014-05-29 17:47:57

标签: python ipython ipython-notebook vega vincent

这个问题可能与Unable plot with vincent in IPython有关,虽然我认为它不是完全相同的问题。

我可以在IPython 0.13.1笔记本中使用Vincent 0.4.4绘制条形图,如下例所示(在docs中找到):

import vincent
vincent.core.initialize_notebook()

bar = vincent.Bar(multi_iter1['y1'])
bar.axis_titles(x='Index', y='Value')
bar.display()

但是,我无法对数据映射example中的世界地图表示做同样的事情:

import vincent
geo_data = [{'name': 'countries',
             'url': world_topo,
             'feature': 'world-countries'}]

vis = vincent.Map(geo_data=geo_data, scale=200)
vis.to_json('vega.json')

我已经取代了' world_topo'使用从here下载的Topojson文件(world-countries.topo.json)的路径。

没有显示错误,也没有任何反应。顺便说一句,我没有使用HTTPS。这是最简单的地图图示例,所以我想它应该可以顺利运行......

有什么想法吗?

2 个答案:

答案 0 :(得分:3)

webpage of vincent之后需要> = 1.0 的IPython版本,因此,升级到更新版本(例如IPython 2.1)很可能会解决您的问题。在我的ubuntu机器上,vega的地图可以很好地工作。

此外,在设置图之后需要调用vis.display()方法,例如,如图所示。 this example notebook

答案 1 :(得分:1)

我尝试的一件事是将世界地图文件放在Python脚本的目录中。另外请记得包含

import json
vincent.core.initialize_notebook()