我正在尝试使用vincent包在jupyter笔记本中可视化我的数据(在pandas中),但在初始尝试时遇到问题,这是我使用的代码(从http://wrobstory.github.io/2013/10/mapping-data-python.html复制):
import vincent
import pandas
world_topo=r'world-countries.topo.json'
geo_data = [{'name': 'countries',
'url': world_topo,
'feature': 'world-countries'}]
vis = vincent.Map(geo_data=geo_data, scale=200)
vis.to_json('vega.json')
vis.display()
运行代码后,没有显示任何内容。我检查了vis的类型:
vincent.charts.Map
我不知道如何继续这里,我感谢对此问题的任何意见。
答案 0 :(得分:0)
不确定您的执行地点。
假设您刚刚使用pip安装vincent并尝试了PY IDLE中的代码,您可能会错过两个重要步骤:
AFIK vincent仅通过Jupyter笔记本生成使用Vega呈现的jsons。 使用Vega进行渲染您需要安装:
1)Jupyter和依赖性
2)Vega和依赖
我可以使用these instructions这样做 一旦jupiter启动,浏览器中会打开一个窗口,我必须在'new'下选择'Python3',并将代码放在该页面的提示符中。
或者您可以使用此online Vega renderer。另请参阅Vega docs
请注意,vincent似乎不是用于此目的的最新技术,其网页指向Altair
另外,我注意到使用原始数据从您发布的代码中'vega.json'生成的json不会在任何地方呈现。这也是一个问题,可能是因为它使用了过时的格式,但我不确定。
我对这项技术的经验有限,但我能够获得图表来呈现specifically this,这也是它对我的看法。
答案 1 :(得分:0)
我知道这篇文章很老但是我发现了你的错误,我想我会在这里回答,以帮助vincent的未来用户,因为它对我来说很漂亮。我正在使用anaconda版本的vincent和jupyter笔记本。
首先,您必须在笔记本中初始化vincent
import vincent
vincent.core.initialize_notebook()
您的下一个问题是您的网址实际上并未指向任何位置。对于您需要的世界地图地形:
world_topo="https://raw.githubusercontent.com/wrobstory/vincent_map_data/master/world-countries.topo.json"
除了这两个例外,我还打印了一张像样的地图。