3

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

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

import vincent
vincent.core.initialize_notebook()

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

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

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”替换为从此处下载的 Topojson 文件 (world-countries.topo.json) 的路径。

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

有任何想法吗?

4

2 回答 2

3

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

此外,需要vis.display()在绘图设置后调用该方法,如本示例笔记本所示。

于 2014-06-02T05:01:31.987 回答
1

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

import json
vincent.core.initialize_notebook()
于 2014-06-29T02:01:59.647 回答