优化转换¶
如果您想优化您的转换,这里有几个技巧可以尝试。
重复变换¶
如果使用相同的转换,请使用 pyproj.Transformer
可以帮助优化您的转换。
import numpy as np
from pyproj import Transformer, transform
transformer = Transformer.from_proj(2263, 4326)
x_coords = np.random.randint(80000, 120000)
y_coords = np.random.randint(200000, 250000)
实例与 transform()
:
transform(2263, 4326, x_coords, y_coords)
结果:每个回路160 ms±3.68 ms(平均值±标准偏差7次,每个回路1次)
实例与 Transformer
:
transformer.transform(x_coords, y_coords)
结果:每个回路6.32μs±49.7 ns(平均值±标准偏差7次,每个回路100000次)
具有相同投影的转换¶
Pyproj将跳过默认情况下完全相同的转换。然而,如果你有时会抛出大致相同的投影,并且结果足够接近是你想要的,那么 skip_equivalent 选项可以帮助您。
注解
来自项目代码:对象对于坐标操作是等效的。它们可以根据对象的名称、标识符和其他元数据而有所不同。参数可以用不同的单位表示,前提是该值(有一些公差)一旦用一个共同的单位表示,就相同。