【发布时间】:2019-08-31 04:46:16
【问题描述】:
我想在 Jupyter / iPython Notebook 的世界地图上可视化/显示数据。我正在尝试使用高级pygal library。
【问题讨论】:
我想在 Jupyter / iPython Notebook 的世界地图上可视化/显示数据。我正在尝试使用高级pygal library。
【问题讨论】:
您也可以使用 IPython.display SVG 简单地渲染 pygal 生成的 svg 代码
pip3 install pygal_maps_world
from IPython.display import SVG
def display_svg(svg_code):
return SVG(svg_code)
import pygal
worldmap_chart = pygal.maps.world.World()
worldmap_chart.title = 'Some countries'
worldmap_chart.add('F countries', ['fr', 'fi'])
worldmap_chart.add('M countries', ['ma', 'mc', 'md', 'me', 'mg',
'mk', 'ml', 'mm', 'mn', 'mo',
'mr', 'mt', 'mu', 'mv', 'mw',
'mx', 'my', 'mz'])
worldmap_chart.add('U countries', ['ua', 'ug', 'us', 'uy', 'uz'])
svg_code = worldmap_chart.render()
display_svg(svg_code)
【讨论】:
您可以使用 IPython.display HTML 渲染 pygal 生成的 HTML 代码。主要优点是更复杂的 javascript 渲染以及工具提示等交互式功能。
pip3 install pygal_maps_world
from IPython.display import display, HTML
html_doc = """
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript"
src="http://kozea.github.com/pygal.js/javascripts/svg.jquery.js"></script>
<script type="text/javascript" src="https://kozea.github.io/pygal.js/2.0.x/pygal-tooltips.min.js""></script>
</head>
<body>
<figure>
{rendered_chart}
</figure>
</body>
</html>
"""
import pygal
worldmap_chart = pygal.maps.world.World()
worldmap_chart.title = 'Some countries'
worldmap_chart.add('F countries', ['fr', 'fi'])
worldmap_chart.add('M countries', ['ma', 'mc', 'md', 'me', 'mg',
'mk', 'ml', 'mm', 'mn', 'mo',
'mr', 'mt', 'mu', 'mv', 'mw',
'mx', 'my', 'mz'])
worldmap_chart.add('U countries', ['ua', 'ug', 'us', 'uy', 'uz'])
display(HTML(html_doc.format(rendered_chart=worldmap_chart.render(is_unicode=True))))
【讨论】: