这与each thesequestions相同,但没有建议的解决方案对我有用。

我正在尝试使用Vincent软件包在Python中制作美国国家地图,如this tutorial中所示。我正在使用Canopy编辑器。当我运行此代码时,控制台中没有任何显示。没有出现任何错误。


我已经将us_states.topo.json放在我的Python工作目录中。
我更新了Canopy和Vincent。
我正在使用vincent.core.initialize_notebook()以及vis.display(),就像其他用户建议的那样。


我不知道我在做什么错...

import vincent

vincent.core.initialize_notebook()

state_topo = 'us_states.topo.json'

geo_data = [{'name': 'states',
             'url': state_topo,
             'feature': 'us_states.geo'},
             ]

vis = vincent.Map(geo_data=geo_data, scale=1000, projection='albersUsa')
vis.to_json('vega.json')
vis.display()

最佳答案

如果我是正确的话,Canopy编辑器无法渲染Vincent输出。

您应该在IPython / Jupyter笔记本上使用Vincent或仅输出json to display it on a browser。您的示例中的代码进行了一些小的修改:

import vincent

vincent.core.initialize_notebook()
state_topo = "https://raw.githubusercontent.com/wrobstory/vincent_map_data/master/us_states.topo.json"
geo_data = [{'name': 'states',
             'url': state_topo,
             'feature': 'us_states.geo'}]

vis = vincent.Map(geo_data = geo_data, scale = 500, projection = 'albersUsa')
vis.to_json('vega.json')
vis.display()


下图显示了IPython / Jupyter笔记本中的输出:

python - 无法显示文森特样本图;没有建议的解决方案-LMLPHP

顺便说一句,似乎文森特是not updated and it wouldn't be。因此,如果您不想使用过时的软件,请寻找替代方法(例如Bokeh)。

10-07 16:14