如何可视化德国的邮政编码数据?

时间:2017-10-04 20:04:58

标签: python maps

我对每个德国邮政编码都有计数(例如something like this),我想将其可视化。

为简单起见,我们可以说我的数据如下:

data = {'80337': 3, '76131': 36, '86462': 24}  # all others: 0

现在我想创建一个热图。

我看过pyGeoDb看起来好像符合我的需要,但我不知道如何使用它。它似乎也不适用于Python 3。

3 个答案:

答案 0 :(得分:1)

我使用谷歌Fusion Tables来做很多这样的事情。它免费进行地理编码,而热图是其基本功能之一。易于嵌入网页,或者如果需要,可以使用自定义JS深入挖掘...

使用您的数据: https://www.google.com/fusiontables/DataSource?docid=1lxDXE_8d3A2IjPHiwf28LhlI8NAFbmYtISqahbjq

答案 1 :(得分:0)

我有同样的问题,我让pyGeoDb使用python3,但我必须使用一种解决方法(Ubuntu 17.10):

  1. 确保已安装pycairo
  2. 从github(https://github.com/mdornseif/pyGeoDb
  3. 下载代码
  4. 创建新文件夹
  5. 将文件夹'pygeodb','tools'和'data'中的所有文件复制或移动到新文件夹中
  6. 进行以下更改:

    • in'draw_german_borders.py','draw_germany_plz.py':将'import pygeodb'更改为'import pygeodb_core as pygeodb'
    • 在'plz2python.py'和'plz2python2013.py'中将'import pygeodb.plzdata'更改为'import plzdata'
    • 'plz_draw':重命名为'plz_draw.py',将'pygeodb.voronoi'更改为'voronoi',将'import pygeodb'更改为'import pygeodd as pygeodb'以及'pygeodb.borderdata'更改为'borderdata'
  7. 打开终端

  8. 将'python ./plz_draw [...]'更改为'python plz_draw.py [...]'并保留其余参数
  9. 至少对我来说它运行正常并且创建的地图没有错误。我遇到的唯一缺点是它需要一些时间,结果* .pdf非常大(至少几百兆)

    可能有一种更优雅的方式来做到这一点,但对我而言,这已足够并且有效。

    玩得开心!

答案 2 :(得分:-1)

您可以使用许多数据可视化工具,您可以将数据导入为CSV或JSON。您可以在下面找到更全面的工具列表: https://github.com/HacksHackersJoburg/DataVisTools