首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python:如何使用底图加快在英国地图上映射经度和纬度数据的过程

Python:如何使用底图加快在英国地图上映射经度和纬度数据的过程
EN

Stack Overflow用户
提问于 2018-08-30 23:21:23
回答 2查看 120关注 0票数 0

我有一个非常大的数据集(超过57万行)作为熊猫数据帧。它同时具有经度和纬度列(所有英国位置)。所以我想在英国地图上绘制它们,并使用matplotlib底图。然而,绘制它需要花费太长的时间。有没有什么方法可以加速这个过程,或者我的代码中是否有任何错误?

代码语言:javascript
复制
for index, row in road.iterrows():
    count = row['count']
    x, y = m(row["Longitude"], row["Latitude"])
    size = count ** 2 + 3
    m.plot(x, y, 'o', markersize=size, color='#444444', alpha=0.8)
EN

回答 2

Stack Overflow用户

发布于 2018-08-31 01:28:29

以下是几个想法:

  1. 将您的数据集缩减为较小的集,以捕获时间并测量改进。如果你不使用索引,就不要在

循环中使用它,也就是,如果你只在循环中使用一次,for row in road.iterrows():

  1. 就不要给变量赋值。

类似于:

代码语言:javascript
复制
for row in road.iterrows():
    m.plot(m(row["Longitude"], row["Latitude"]),
       'o',
       markersize=(row['count'] ** 2 + 3),
       color='#444444', 
       alpha=0.8)

看起来不是很漂亮,但应该会快一点。

然后跟踪每个更改对性能的影响。

祝好运!

票数 0
EN

Stack Overflow用户

发布于 2018-08-31 03:14:05

这真的取决于你试图对数据进行什么可视化。

我的第一个想法是做一个数据的密度图(首先将数据放入一个更大的网格中,然后用颜色绘制网格,表明每个网格中有多少东西)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52100514

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档