这与each these的questions相同,但没有建议的解决方案对我有用。
我正在尝试使用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笔记本中的输出:
顺便说一句,似乎文森特是not updated and it wouldn't be。因此,如果您不想使用过时的软件,请寻找替代方法(例如Bokeh)。