小编Fin*_*nix的帖子

无论如何,要在Python中快速绘制多条线?如果可能的话,首选 Matploblib

我有一个 geoJson 文件。一个 JSON 类型文件,它有 93k 行的许多点(387k)坐标。我想知道是否可以使用 python 将所有这些线快速绘制成一个图形,因为我需要稍后为不同的时间间隔创建许多热图。

目前我正在使用 matplotlib

import matplotlib
matplotlib.use('Agg')
from matplotlib import pyplot as plt
# draw road network
# roadSegs structure: {road_segment1:[[line1_x, line1_y],...],...}
figure, ax = plt.subplots(1, 1)
ax.set_xlim(x_min - 100.0, x_max + 100.0)
ax.set_ylim(y_min - 100.0, y_max + 100.0)
for feature_id, lines in roadSegs.iteritems():
    for line in lines:
        ax.plot(line[0], line[1])
plt.savefig('road.png')
Run Code Online (Sandbox Code Playgroud)

我需要使用非交互式后端,因为此代码将位于服务器中。我尝试只绘制一张地图。已经花了15分钟,还没有结束。有什么想法可以提高速度吗?我知道 matplotlib 不是为大型数据集可视化而设计的,但我的数据集小于 1M 点。有什么想法可以提高其性能吗?如果推荐其他库,我应该使用哪一个?至少它必须让我渲染线条并改变图形大小。

python matplotlib

3
推荐指数
1
解决办法
2287
查看次数

为什么dict(dict)获得相同的字典?

这可能听起来很愚蠢.当我在python中覆盖dict时:

class idict(dict):
    def __init__ (self, *args, **kwargs):
        self._store = dict(*args, **kwargs)
Run Code Online (Sandbox Code Playgroud)

然后我用

a = {1:2, 2:3}
b=idict(a)
print b._store == a
Run Code Online (Sandbox Code Playgroud)

给 True

我不知道为什么dict(dict)得到同样的字典.在python中的dict有任何方法处理这个吗?我不确定我是否以正确的方式做到了.

另一个问题是:

如果我知道我将获得父类实例(如dict),我想在此实例中添加/更改方法.我通常从父类创建子类并获取子类实例.这似乎是内存效率低下的,因为父实例已经存在.

我搜索后的一种方法是直接在父类中添加/更改方法(例如parent_class.method = new_method),然后获取父类的实例.我不确定这在OOP方面是否正确.

python

1
推荐指数
1
解决办法
50
查看次数

标签 统计

python ×2

matplotlib ×1